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

            }

  • 相关阅读:
    GCC的gcc和g++的区别
    C++运行程序依赖的环境-vcredist_x64.exe
    linux账户管理[转自vbird]
    Linux 的账号与群组[转自vbird]
    文件的搜寻【转vbird】
    常用的文件和目录操作命令【转vbird】
    十六进制查看器【转】
    文件与目录的默认权限与隐藏权限【转vbird】
    改变文件属性与权限(转)
    Linux目录规范和含义(转)
  • 原文地址:https://www.cnblogs.com/laukings/p/12745135.html
Copyright © 2011-2022 走看看