zoukankan      html  css  js  c++  java
  • 根据Http下载路径把文件网络流转换为内存流

            /// <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;
                }

            }

  • 相关阅读:
    使用 GitHub, Jekyll 打造自己的免费独立博客
    如何解决数据科学计数法在数据库中的显示
    RDF
    C# 在 4.0 以后一共有3种创建线程的方式
    C#多线程
    1、框架概述
    3、IDEA 中使用 Maven
    2、Maven 核心概念
    1、Maven 概述
    JDK动态代理
  • 原文地址:https://www.cnblogs.com/laukings/p/12745135.html
Copyright © 2011-2022 走看看