Asp.net C# 檔案下載,附件下載程式碼案例,不顯示檔案路徑
Asp.net C# 檔案下載,附件下載程式碼案例
本案例是以檔案流的方式將檔案下載到瀏覽器,瀏覽器自動彈出下載提示框,不顯示檔案絕對路徑,適合做積分下載等。
try { string fileid = ObjectHandlers.Get("fileid").ToString(); //獲取下載的檔案資訊 HttpContext.Current.Response.ContentEncoding = System.Text.Encoding.GetEncoding("utf-8"); Model.FileInfo modelFileInfo = bllFileInfo.GetFileByFileID(fileid); if (modelFileInfo != null) { System.IO.FileInfo downloadFile = new System.IO.FileInfo(HttpContext.Current.Server.MapPath("../" + modelFileInfo.FilePath)); if (downloadFile.Exists) { ///指定返回的是一個不能被客戶端讀取的流,必須被下載 HttpContext.Current.Response.ContentType = "application/octet-stream"; HttpContext.Current.Response.ContentEncoding = System.Text.Encoding.GetEncoding("utf-8"); ///新增頭資訊,為"檔案下載/另存為"對話方塊指定預設檔名 //Response.AddHeader("Content-Disposition", "attachment; filename=" + fileName); HttpContext.Current.Response.AddHeader("Content-Disposition", "attachment; filename=" + HttpUtility.UrlEncode(downloadFile.Name, System.Text.Encoding.UTF8)); ///是否要支援斷點續傳 HttpContext.Current.Response.AddHeader("Content-Range", "bytes 0-800/801"); ///新增頭資訊,指定檔案大小,讓瀏覽器能夠顯示下載進度 HttpContext.Current.Response.AddHeader("Content-Length", downloadFile.Length.ToString()); HttpContext.Current.Response.TransmitFile(downloadFile.FullName); //HttpContext.Current.Response.End(); HttpContext.Current.ApplicationInstance.CompleteRequest(); } else { string contentType = "text/html; charset=utf-8"; return Response.AsText("下載失敗,原始檔不存在!", contentType); } } else { string contentType = "text/html; charset=utf-8"; return Response.AsText("下載失敗,原始檔不存在!", contentType); } return null; } catch (Exception ex) { string contentType = "text/html; charset=utf-8"; return Response.AsText("系統異常導致下載失敗,請重新嘗試下載!", contentType); }
有問題可以進群提問~
由龐順龍最後編輯於:4年前
內容均為作者獨立觀點,不代表八零IT人立場,如涉及侵權,請及時告知。
相關文章
- C#檔案下載C#
- ASP.NET 檔案下載ASP.NET
- 檔案程式設計、檔案下載程式設計
- iOS開發網路篇之檔案下載、大檔案下載、斷點下載iOS斷點
- C# 檔案下載 : WinINetC#
- SpringMVC下http和https路徑下的檔案下載SpringMVCHTTP
- 檔案下載
- 設定手機郵件下載檔案路徑
- OSS實現檔案下載進度條顯示
- Java程式碼實現下載檔案Java
- 00、下載檔案
- Ajax 下載檔案
- FastApi下載檔案ASTAPI
- MVC 下載檔案MVC
- js 檔案下載JS
- Servlet下載檔案Servlet
- httpWebRequest 檔案下載HTTPWeb
- php檔案下載PHP
- .net 檔案下載
- php 檔案下載PHP
- HttpClient 下載檔案HTTPclient
- php程式碼生成txt檔案並下載PHP
- asp.net 檔案下載與壓縮ASP.NET
- ASP.NET 大檔案下載的實現思路及程式碼ASP.NET
- 檔案下載檔名亂碼處理
- asp.net 檔案上傳和下載管理原始碼ASP.NET原始碼
- QQ 群檔案下載後過期時間顯示 undefinedUndefined
- 【CLI】使用 Curl 下載檔案實時進度條顯示
- ASP.NET檔案下載的實用方法ASP.NET
- 檔案上傳下載
- Flutter 下載檔案操作Flutter
- SpringMVC檔案下載SpringMVC
- 【springmvc】下載檔案SpringMVC
- 使用PHP下載檔案PHP
- 檔案下載相關
- ftp下載指定檔案FTP
- PHP檔案下載原理PHP
- javaWeb不生成臨時檔案實現壓縮檔案下載JavaWeb