ASP.NET直接下载文件

原创 2004年06月26日 07:07:00

一. 服务端通过Response输出相应的HTTP Response Headers信息,和要下载的文件的数据来把文件发送到客户端,HTTP Response Headers表现在html文件中是下面的形式:
<meta http-equiv="Content-Type" content="text/htm ">
http-equiv表示是Headers的名称,content表示这个Headers的值

二. 首先,要输出文件的MIME类型:
Page.Response.AddHeader( "Content-Type", “MIME类型” );

三. 其次,要输出下载的文件的打开位置和文件名:
Page.Response.AddHeader("Content-Disposition", "attachment;filename=" + FileName );
content-disposition 的 HTTP response header 允许指定文档表示的信息。使用这种 header ,你就可以将文档指定成单独打开(而不是在浏览器中打开),还可以根据用户的操作来显示。如果用户要保存文档,你还可以为该文档建议一个文件名。这个建议名称会出现在 Save As 对话框的“文件名”栏中。
attachment ―― 表示作为附件发送到客户端,客户端将单独打开此文件。
inline ―― 表示将在浏览器中打开这个文件。
filename ―― 表示发送到客户端文件的文件名。

四. 准备发送到客户端的文件数据:
不管什么类型的文件都要先转成byte类型的数组,然后将这个byte数组用Response.BinaryWrite方法输出到客户端。

   string path ="G://download//down.txt";
   System.IO.FileInfo file = new System.IO.FileInfo(path);
   Response.Clear();
   Response.AddHeader("Content-Disposition", "attachment; filename=" + HttpUtility.UrlEncode(file.Name));

   Response.AddHeader("Content-Length", file.Length.ToString());
   Response.ContentType = "application/octet-stream";
   Response.WriteFile(file.FullName);
   Response.End();

ASP实现点击链接直接下载文件

ASP实现点击链接直接下载文件 ...
  • chinmo
  • chinmo
  • 2008年03月21日 17:37
  • 4340

ASP实现文件直接下载

在IE进行文档链接时,如果遇到OLE支持的文档,IE会自动调用相应程序打开它,有时候这种功能并不是我们所需的,虽然我们可以提醒用户用鼠标右 键-->"目标另存为...."命令来下载文档,但这样毕竟不太...
  • lazycatw
  • lazycatw
  • 2007年04月10日 10:54
  • 460

Download File

  • 2008年03月23日 22:51
  • 13.64MB
  • 下载

ASP.NET实现文件下载

方式一:TransmitFile实现下载。将指定的文件直接写入 HTTP 响应输出流,而不在内存中缓冲该文件。     protected void Button1_Click(object send...
  • codeshark
  • codeshark
  • 2008年05月23日 15:28
  • 25277

ASP.NET直接下载一个文件,而不是在IE中打开它

FileStream fileStream=new FileStream(pFileName,FileMode.Open) long fileSize = fileStream.Length; Con...
  • jelink
  • jelink
  • 2006年11月03日 14:42
  • 1166

asp.net 用流的方式下载文件

asp.net 用流的方式下载文件
  • iamliangyuhui
  • iamliangyuhui
  • 2011年03月21日 15:25
  • 3339

ASP.NET直接下载文件

一. 服务端通过Response输出相应的HTTP Response Headers信息,和要下载的文件的数据来把文件发送到客户端,HTTP Response Headers表现在html文件中是下面...
  • devfan
  • devfan
  • 2004年06月26日 07:07
  • 6367

ASP.NET直接下载文件

一. 服务端通过Response输出相应的HTTP Response Headers信息,和要下载的文件的数据来把文件发送到客户端,HTTP Response Headers表现在html文件中是下面...
  • evenbing
  • evenbing
  • 2007年09月13日 16:04
  • 490

asp.net 浏览器下载文件的四种方式

其实不是自己想要的,自己希望能够弹一个窗口出来选择保存的路径protected void Button1_Click(object sender, EventArgs e) {protecte...
  • qq61394323
  • qq61394323
  • 2015年01月08日 09:39
  • 5361
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:ASP.NET直接下载文件
举报原因:
原因补充:

(最多只允许输入30个字)