zoukankan      html  css  js  c++  java
  • 使用C#下载网络文件

    下载

    /// <summary>
    /// 下载文件
    /// </summary>
    /// <param name="URL">下载文件地址</param>
    /// <param name="Filename">下载后另存为(全路径)</param>
    private bool DownloadFile(string URL, string filename)
    {
        try
        {
            System.Net.HttpWebRequest Myrq = (System.Net.HttpWebRequest) System.Net.HttpWebRequest.Create(URL);
            System.Net.HttpWebResponse myrp = (System.Net.HttpWebResponse) Myrq.GetResponse();
            System.IO.Stream st = myrp.GetResponseStream();
            System.IO.Stream so = new System.IO.FileStream(filename, System.IO.FileMode.Create);
            byte[] by = new byte[1024];
            int osize = st.Read(by, 0, (int) by.Length);
            while (osize > 0)
            {
                so.Write(by, 0, osize);
                osize = st.Read(by, 0, (int) by.Length);
            }
            so.Close();
            st.Close();
            myrp.Close();
            Myrq.Abort();
            return true;
        }
        catch (System.Exception e)
        {
            return false;
        }
    }

    解压Zip文件

    下面代码主要用到了SharpZipLib的库

    private string UnZip(string entryname, ZipFile zf)
    {
        var cover = zf.GetEntry(entryname);
        if (cover == null)
        {
            return null;
        }
        string filepath = System.AppDomain.CurrentDomain.BaseDirectory + @"pic";
        string filename = DateTime.Now.ToString("yyyyMMddHHmmssfff") + "." + RY.Common.DirectoryAndFile.GetFileExt(entryname);
    
        string name = filepath + filename;
        using (FileStream writer = System.IO.File.Create(name)) //解压后的文件
        {
            var stream = zf.GetInputStream(cover);
            int bufferSize = 1024 * 2; //缓冲区大小
            int readCount = 0; //读入缓冲区的实际字节
            byte[] buffer = new byte[bufferSize];
            readCount = stream.Read(buffer, 0, bufferSize);
            while (readCount > 0)
            {
                writer.Write(buffer, 0, readCount);
                readCount = stream.Read(buffer, 0, bufferSize);
            }
            writer.Close();
        }
        return "pic/" + filename;
    }
  • 相关阅读:
    Iconfont在Vue中的使用
    yarn安装依赖报错
    动漫
    伤痛的魅力。绷带男子特辑
    记STM32F103C8T6+STLINK下载器在Keil中的设置
    JQuery浮动对象插件
    树莓派RTL8723BU_LINUX驱动安装
    python虚拟环境相关设置备忘
    解决树莓派控制台命令行乱码
    python模块wifi使用小记
  • 原文地址:https://www.cnblogs.com/smallerpig/p/3646219.html
Copyright © 2011-2022 走看看