日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > asp.net >内容正文

asp.net

文件流下载 ASP.NET

發布時間:2023/12/31 asp.net 54 豆豆
生活随笔 收集整理的這篇文章主要介紹了 文件流下载 ASP.NET 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

using?System.IO?
void?Download()
{
????System.IO.FileStream r?=?new?System.IO.FileStream(FileName, System.IO.FileMode.Open);????//文件下載實例化?
????//設置基本信息???
????Response.Buffer=?false;??
????Response.AddHeader("Connection",?"Keep-Alive");??
????Response.ContentType?=?"application/octet-stream";??
????Response.AddHeader("Content-Disposition",?"attachment;filename="?+?System.IO.Path.GetFileName(FileName));?//?此處文件名如果是中文在瀏覽器默認是籌碼,應該加HttpUtility.UrlEncode(filename)?
????Response.AddHeader("Content-Length", r.Length.ToString());??
????while?(true)????//如果文件大于緩沖區,通過while循環多次加載文件?
????{??
????????//開辟緩沖區空間???
????????byte[] buffer?=?new?byte[1024];??//讀取文件的數據???
????????int?leng?=?r.Read(buffer,?0,?1024);??
????????if(leng?==?0)?????????????//到文件尾,結束???
????????????break;??
????????if?(leng?==?1024)????????????//讀出的文件數據長度等于緩沖區長度,直接將緩沖區數據寫入??
????????????Response.BinaryWrite(buffer);???????????//向客戶端發送數據流?
????????else??
????????{??
????????????//讀出文件數據比緩沖區小,重新定義緩沖區大小,只用于讀取文件的最后一個數據塊??
????????????byte[] b?=?new?byte[leng];??for?(int?i?=?0; i?<?leng; i++)??
????????????b[i]?=?buffer[i];??
????????????Response.BinaryWrite(b);??
????????}??
????}
????r.Close();//關閉下載文件??
????Response.End();//結束文件下載?
}

轉載于:https://www.cnblogs.com/chaoa/archive/2012/03/09/2386106.html

總結

以上是生活随笔為你收集整理的文件流下载 ASP.NET的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。