IT貓撲網(wǎng):您身邊最放心的安全下載站! 最新更新|軟件分類|軟件專題|手機(jī)版|論壇轉(zhuǎn)貼|軟件發(fā)布

您當(dāng)前所在位置: 首頁網(wǎng)絡(luò)編程.Net編程 → ASP.NET 簡(jiǎn)單下載的實(shí)現(xiàn)

ASP.NET 簡(jiǎn)單下載的實(shí)現(xiàn)

時(shí)間:2015-06-28 00:00:00 來源:IT貓撲網(wǎng) 作者:網(wǎng)管聯(lián)盟 我要評(píng)論(0)

  簡(jiǎn)單頁面下載通過Response.WriteFile()函數(shù)將指定的文件直接寫入HTTP內(nèi)容輸出流。該方 法實(shí)現(xiàn)比較簡(jiǎn)單,本例中通過函數(shù)FileDownload()實(shí)現(xiàn)文件的下載,代碼如下:

  private void FileDownload(string FullFileName)

  {

  FileInfo DownloadFile = new FileInfo(FullFileName);

  Response.Clear();

  Response.ClearHeaders();

  Response.Buffer = false;

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

  Response.AppendHeader("Content-Disposition", "attachment;filename=" + HttpUtility.UrlEncode(DownloadFile.FullName, System.Text.Encoding.UTF8));

  Response.AppendHeader("Content-Length", DownloadFile.Length.ToString());

  Response.WriteFile(DownloadFile.FullName);

  Response.Flush();

  Response.End();

  }

  由于在代碼中使用了 FileInfo 類,必須在代碼的開始引用 System.IO 空間,引用代碼如下所示。

  using System.IO;

  FileInfo 類提供創(chuàng)建、復(fù)制、刪除、移動(dòng)和打開文件的實(shí)例方法,并且?guī)椭鷦?chuàng)建FileStream對(duì)象。其中,Length屬性用來獲取當(dāng)前文件的大小,F(xiàn)ullName 屬性獲取目錄或文件的完整目錄。

  FileDownload()函數(shù)實(shí)現(xiàn)的原理過程是,首先創(chuàng)建FileInfo類,通過該類獲取要下載文件的信息,最后通過 WriteFile()函數(shù)下載該文件。該方法面臨的問題是 WriteFile 方法使文件的二進(jìn)制數(shù)據(jù)流向客戶端,它是一個(gè)出名的內(nèi)存占用狂,把整個(gè)文件載入服務(wù)器的RAM中來提供服務(wù)(實(shí)際上它甚至于會(huì)占用文件兩倍大小的空間)。對(duì)于大文件,這會(huì)引起服務(wù)內(nèi)存問題,并且可能重復(fù)ASP.NET過程。因此較大文件均使用高級(jí)下載方法。

關(guān)鍵詞標(biāo)簽:ASP.NET

相關(guān)閱讀

文章評(píng)論
發(fā)表評(píng)論

熱門文章 誅仙3飛升任務(wù)怎么做-誅仙3飛升任務(wù)流程最新2022 誅仙3飛升任務(wù)怎么做-誅仙3飛升任務(wù)流程最新2022 鐘離圣遺物推薦-原神鐘離圣遺物詞條 鐘離圣遺物推薦-原神鐘離圣遺物詞條 解決方法:應(yīng)用程序“DEFAULT WEB SITE”中的服務(wù)器錯(cuò)誤 解決方法:應(yīng)用程序“DEFAULT WEB SITE”中的服務(wù)器錯(cuò)誤 使用aspnet_regiis.exe 重新注冊(cè).NET Framework 使用aspnet_regiis.exe 重新注冊(cè).NET Framework

相關(guān)下載

    人氣排行 誅仙3飛升任務(wù)怎么做-誅仙3飛升任務(wù)流程最新2022 asp.net表單提交方法GET\POST 在ASP.NET中如何判斷用戶IE瀏覽器的版本 Asp.net中messagebox的實(shí)現(xiàn)方法 Asp.net中的web.config配置 在ASP.NET MVC中實(shí)現(xiàn)大文件異步上傳 asp.net獲取URL和IP地址 FileUpload上傳多文件出現(xiàn)錯(cuò)誤的解決方法