ASP.NET 资料下载

 1     public void downloadfile(string s_fileName)
 2     {
 3         HttpContext.Current.Response.ContentType = "application/ms-download";
 4         string s_path = HttpContext.Current.Server.MapPath("~/") + s_fileName;
 5         System.IO.FileInfo file = new System.IO.FileInfo(s_path);
 6         HttpContext.Current.Response.Clear();
 7         HttpContext.Current.Response.AddHeader("Content-Type", "application/octet-stream");
 8         HttpContext.Current.Response.Charset = "utf-8";
 9 
10         string filename = file.Name;
11         string userAgent = HttpContext.Current.Request.ServerVariables["http_user_agent"].ToLower();
12         //处理firefox保存时文件名乱码的问题  
13         if (userAgent.IndexOf("firefox") == -1)
14             filename = HttpUtility.UrlEncode(filename, System.Text.Encoding.UTF8);
15 
16         HttpContext.Current.Response.AddHeader("Content-Disposition", "attachment;filename=" + filename);
17         HttpContext.Current.Response.AddHeader("Content-Length", file.Length.ToString());
18         HttpContext.Current.Response.WriteFile(file.FullName);
19         HttpContext.Current.Response.Flush();
20         HttpContext.Current.Response.Clear();
21         HttpContext.Current.Response.End();
22     }
原文地址:https://www.cnblogs.com/imluzhi/p/5038013.html