Response.WriteFile的应用 以及 文件的下载

文件的下载:

private void Page_Load(object sender, System.EventArgs e) 
{
// 在此处放置用户代码以初始化页面 //
Response.Clear();//不要使用这一句那样ie会强行打开它结果就是死机。
//这里进行你的计数
Response.Redirect( @"http://localhost/aa.rar",true);
Response.End();
}

实现文件的下载。

=================================================一下是引用网上的内容
(我在web.config中已经把maxRequestLength设为50M,executionTimeout设为30分钟了。)
我使用如下方法实现文档下载的操作: -------------
Response.AppendHeader("Content-Disposition","attachment; filename="+HttpUtility.UrlEncode(FileName,System.Text.Encoding.UTF8)); Response.WriteFile(PathAndName); Response.End();
------------- 但是当文件比较大(3、40M)时,下载时老是出错。

1.可以读取文件,将文件在页面显示。 ¢Œï:ø‚ˆ™R(bbs.szblogs.com‘’’9{Þžì:
¢Œï:ø‚ˆ™R(bbs.szblogs.com‘’’9{Þžì:
< table >
< tr >
   
< td style ="width: 100px" > <% Response.WriteFile("HTMLPage.htm"); %> </ td >
</ tr >
</ table >
¢Œï:ø‚ˆ™R(bbs.szblogs.com‘’’9{Þžì:
¢Œï:ø‚ˆ™R(bbs.szblogs.com‘’’9{Þžì:
2.读取文件做下载功能: ¢Œï:ø‚ˆ™R(bbs.szblogs.com‘’’9{Þžì:
¢Œï:ø‚ˆ™R(bbs.szblogs.com‘’’9{Þžì:
private void downloadfile( string fname)
{
   
if (fname == null || fname.trim() == "")
       
return;
    fileinfo file
= new fileinfo(fname);

    response.clear();
    response.addheader(
"content-disposition",
       
"attachment;  filename=" + httputility.urlencode((file.name), system.text.encoding.utf8));
    response.addheader(
"content-length", file.length.tostring());
    response.contenttype
= "application/octet-stream";

    response.writefile(file.fullname);
    response.flush();

    response.close();
    response.end();
}

你可能感兴趣的:(response)