Asp.Net文件下载方法 参考

本文介绍了一种在ASP.NET中实现文件下载的方法,通过使用Session传递文件路径和名称,并通过新窗口进行文件输出。

Asp.Net方法 参考

(1)    首先做成下载文件。

。。。 。。。

 

(2)    做成下载文件的路径以及文件名用session传递给打开页面

Session["FILE_PATH"] =  路径 + "DownLoadFile.txt";

Session["FILE_NAME"] = "DownLoadFile.txt";

 

(3)    打开新窗体(新窗体用于出力下载文件,窗体无需添加任何Html

System.Web.UI.ScriptManager.RegisterStartupScript(Page,

                this.GetType(),

                "open",               

                "window.open('Download.aspx',null,'toolbar=0,location=no,directories=0,"  + "status=0,scrollbars=no,width=1px,height=1px');", true);

注意 用于打开新窗体的按钮不要放到UpdatePannel控件中(或者设置出力按钮控件属性可以提交全页面)

 

(4)    新窗体中(Download.aspx

新窗体直接在Page_load中加入代码

根据前画面传递来的session值来定位文件,出力

   protected void Page_Load(object sender, EventArgs e)

    {

        string strFilePath = Session["FILE_PATH"].ToString();

        string strFileName = Session["FILE_NAME"].ToString();

        Response.AppendHeader("Content-Transfer-Encoding", "base64");

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

Response.AddHeader("Content-Disposition", "attachment; filename=" + HttpUtility.UrlEncode(strFileName));

        Response.Flush();

        Response.WriteFile(strFilePath);

        Response.End();

    }

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值