ASP.NET实现推送文件到浏览器的方法

[复制链接]
查看: 200|回复: 7
发表于 2018-4-3 09:20:03 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有帐号?立即注册

x

本文实例讲述了ASP.NET实现推送文件到浏览器的方法。分享给大家供大家参考。具体分析如下:

        这里主要实现从服务器到浏览器,推送文件,提供用户下载/浏览的功能。

         提示: 在AJAX UpdatePanel里面将无效。如果代码从按钮单击事件中被调用,该按钮需要在 AJAX UpdatePanel的外部。

          具体代码如下:

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
///
/// Downloads (pushes) file to the client browser.
/// **** NOTE **** Cannot be done from inside an AJAX UpdatePanel control.
///
/// The full file path of the file
protected void DownloadFile(string fullFilePath)
{
// Gets the File Name
string fileName = fullFilePath.Substring(fullFilePath.LastIndexOf('') + 1);
byte[] buffer;
using (FileStream fileStream = new FileStream(fullFilePath, FileMode.Open))
{
int fileSize = (int)fileStream.Length;
buffer = new byte[fileSize];
// Read file into buffer
fileStream.Read(buffer, 0, (int)fileSize);
}
Response.Clear();
Response.Buffer = true;
Response.BufferOutput = true;
Response.ContentType = "application/x-download";
Response.AddHeader("Content-Disposition", "attachment; filename=" + fileName);
Response.CacheControl = "public";
// writes buffer to OutputStream
Response.OutputStream.Write(buffer, 0, buffer.Length);
Response.End();
}


          希望本文所述对大家的asp.net程序设计有所帮助


发表于 2018-5-1 14:10:59 | 显示全部楼层
啥也不说了,感谢楼主分享哇!
回复

使用道具 举报

发表于 2018-7-12 18:05:56 | 显示全部楼层
这个帖一般般,还可以哦。
回复

使用道具 举报

发表于 2018-8-6 09:52:23 | 显示全部楼层
确实是难得好帖啊,顶先
回复

使用道具 举报

发表于 2019-1-26 09:01:59 | 显示全部楼层
我只是路过打酱油的
回复

使用道具 举报

发表于 2019-2-11 17:21:30 | 显示全部楼层
确实是难得好帖啊,顶先
回复

使用道具 举报

发表于 2019-2-18 19:32:49 | 显示全部楼层
额,看不懂在说神马~@_@
回复

使用道具 举报

发表于 2019-2-19 10:34:02 | 显示全部楼层
正需要,支持楼主大人了!
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

友情链接
 
 
工作时间:
8:00-18:00
客服热线:
15368564009
客服微信