zoukankan      html  css  js  c++  java
  • C#文件下载方法

    一:TransmitFile文件下载,不需要打开关闭文件,直接插入传输流中

    Response.ContentType = "application/x-zip-compressed"; 

            

    Response.AddHeader("Content-Disposition", 

    "attachment;filename=z.zip"); 

            

    string filename = Server.MapPath("DownLoad/z.zip"); 

            

    Response.TransmitFile(filename);

     

    二:

     

        

     

        

    //

    第二:WriteFile下载文件

    string fileName ="asd.txt";//

    客户端保存的文件名

    string filePath=Server.MapPath("DownLoad/aaa.txt");//路径 

    FileInfo fileInfo = new FileInfo(filePath); 

    Response.Clear();    

    Response.ClearContent();       

    Response.ClearHeaders();       

    Response.AddHeader("Content-Disposition", "attachment;filename=" + fileName);       

    Response.AddHeader("Content-Length", fileInfo.Length.ToString());      

    Response.AddHeader("Content-Transfer-Encoding", "binary");     

    Response.ContentType = "application/octet-stream"; 

    Response.ContentEncoding = System.Text.Encoding.GetEncoding("gb2312"); 

    Response.WriteFile(fileInfo.FullName); 

    Response.Flush();    

    Response.End(); 

     

    三:流方式下载

    FileStream fs = new FileStream(filePath, FileMode.Open); 

    byte[] bytes = new byte[(int)fs.Length];   

    fs.Read(bytes, 0, bytes.Length);  

    fs.Close(); 

    Response.ContentType = "application/octet-stream"; //通知浏览器下载文件而不是打开

    Response.AddHeader("Content-Disposition", "attachment;  filename=" + HttpUtility.UrlEncode(fileName, System.Text.Encoding.UTF8)); 

    Response.BinaryWrite(bytes); 

    Response.Flush();   

    Response.End();

    四:WriteFile 分块下载 自己百度去

  • 相关阅读:
    SQL 学习笔记(一)联表查询
    .NET (OleDb) Access 各个版本的连接字符口串
    加油站
    程序员的编程套路
    落单的数
    读《怎样解题》
    使用org-mode写cnblogs博客
    Emacs 25.1 error solved: url-http-create-request: Multibyte text in HTTP request
    二进制表示小数
    快速幂
  • 原文地址:https://www.cnblogs.com/LGDD/p/8698244.html
Copyright © 2011-2022 走看看