直接下载文件,而非在浏览器中打开

本文介绍了一种使用C#实现的简单方法,使服务器能够将指定的文件(如PDF)发送到客户端并强制下载,而不是在浏览器中直接打开。这种方法特别适用于希望避免在浏览器内显示文件的情况。

如XML、PDF之类的文件,我们提供给客户下载时往往会在浏览器中打开,很不方便。

 

下面的demo可以解决此问题,尽管这段代码很多人都会,但还是发在这里,作为一个备份吧

 

 

 <%@ Import Namespace="System.Xml" %>

<script language="C#" runat="Server">
void Page_Load(object sender, EventArgs e) {
   string path 
= Server.MapPath("somefile.pdf");
   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();
}
</script> 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值