首页 > Web开发 > 详细

根据Http下载路径把文件网络流转换为内存流

时间:2020-04-21 17:11:22      阅读:216      评论:0      收藏:0      [点我收藏+]

        /// <summary>
        /// 根据文件虚拟路径获取内存流
        /// </summary>
        /// <param name="url">http路径</param>
        /// <returns></returns>
        public static Stream GetUrlStream(string url)
        {
            try
            {
                HttpWebRequest myRequest = (HttpWebRequest)HttpWebRequest.Create(url);// 打开网络连接
                myRequest.AddRange(0);
                Stream readStream = myRequest.GetResponse().GetResponseStream();// 向服务器请求,获得服务器的回应数据流
                MemoryStream memoryStream = new MemoryStream();
                //将基础流写入内存流
                const int bufferLength = 1024;
                byte[] buffer = new byte[bufferLength];
                memoryStream.Position = 0;
                int contentSize = readStream.Read(buffer, 0, bufferLength);
                while (contentSize > 0)
                {

                    memoryStream.Write(buffer, 0, contentSize);
                    contentSize = readStream.Read(buffer, 0, bufferLength);
                    memoryStream.Position = memoryStream.Length;//重新定义流的追加位置
                }
                readStream.Close();
                return memoryStream;
            }
            catch (Exception ex)
            {

                throw ex;
            }

        }

根据Http下载路径把文件网络流转换为内存流

原文:https://www.cnblogs.com/laukings/p/12745135.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!