ASP.NET实现推送文件到浏览器的方法
发布时间:2015-10-27 来源:查字典编辑
摘要:本文实例讲述了实现推送文件到浏览器的方法。分享给大家供大家参考。具体分析如下:这里主要实现从服务器到浏览器,推送文件,提供用户下载/浏览的功...
本文实例讲述了实现推送文件到浏览器的方法。分享给大家供大家参考。具体分析如下:
这里主要实现从服务器到浏览器,推送文件,提供用户下载/浏览的功能。
提示: 在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 /// summary /// Downloads (pushes) file to the client browser. /// **** NOTE **** Cannot be done from inside an AJAX UpdatePanel control. /// /summary /// param name=fullFilePathThe full file path of the file/param protected void DownloadFile(string fullFilePath) { // Gets the File Name string fileName = fullFilePath.Substring(stIndexOf('') + 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(); }希望本文所述对大家的程序设计有所帮助。