ASP.NET下載檔案(彈出開啟儲存檔案對話方塊)
看了好多種方法
好像都是通過Response轉換來的
Code
<!--
Code highlighting produced by Actipro CodeHighlighter (freeware)
http://www.CodeHighlighter.com/
-->public void Open()
{
string FullFileName = "";
//ASP.NET下載檔案(彈出開啟儲存檔案對話方塊)
//fileURL為帶路徑的檔案全名
/*
string fileURL = url;
System.IO.FileInfo fileInfo = new System.IO.FileInfo(fileURL);
Response.Clear();
Response.AddHeader("content-disposition","attachment;filename="+Server.UrlEncode(fileInfo.Name.ToString()));
Response.AddHeader("content-length",fileInfo.Length.ToString());
Response.ContentType = "application/octet-stream";
Response.ContentEncoding = System.Text.Encoding.Default;
Response.WriteFile(fileURL);
*/
//無錯版:
try
{
string FileName = ".//路徑//書名.pdf";
FileName = ".//路徑//檔名.副檔名";
FullFileName = Server.MapPath(FileName);
//FileName--要下載的檔名
FileInfo DownloadFile = new FileInfo(FullFileName);
if (DownloadFile.Exists)
{
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.ASCII));
Response.AppendHeader("Content-Length", DownloadFile.Length.ToString());
Response.WriteFile(DownloadFile.FullName);
Response.Flush();
Response.End();
}
else
{
//檔案不存在
}
}
catch
{
//開啟時異常了
}
}
<!--
Code highlighting produced by Actipro CodeHighlighter (freeware)
http://www.CodeHighlighter.com/
-->public void Open()
{
string FullFileName = "";
//ASP.NET下載檔案(彈出開啟儲存檔案對話方塊)
//fileURL為帶路徑的檔案全名
/*
string fileURL = url;
System.IO.FileInfo fileInfo = new System.IO.FileInfo(fileURL);
Response.Clear();
Response.AddHeader("content-disposition","attachment;filename="+Server.UrlEncode(fileInfo.Name.ToString()));
Response.AddHeader("content-length",fileInfo.Length.ToString());
Response.ContentType = "application/octet-stream";
Response.ContentEncoding = System.Text.Encoding.Default;
Response.WriteFile(fileURL);
*/
//無錯版:
try
{
string FileName = ".//路徑//書名.pdf";
FileName = ".//路徑//檔名.副檔名";
FullFileName = Server.MapPath(FileName);
//FileName--要下載的檔名
FileInfo DownloadFile = new FileInfo(FullFileName);
if (DownloadFile.Exists)
{
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.ASCII));
Response.AppendHeader("Content-Length", DownloadFile.Length.ToString());
Response.WriteFile(DownloadFile.FullName);
Response.Flush();
Response.End();
}
else
{
//檔案不存在
}
}
catch
{
//開啟時異常了
}
}
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/12639172/viewspace-623970/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- Electron 開啟儲存檔案對話方塊
- pageoffice6 版本線上開啟檔案彈出網頁對話方塊網頁
- 【Qt 專欄】檔案對話方塊 檔案的彈窗選擇-QFileDialogQT
- pyqt-PyQt5開啟檔案對話方塊QFileDialogQT
- Matlab - 獲取和儲存檔案路徑選擇對話方塊Matlab
- 塊儲存 檔案儲存 物件儲存物件
- 4.使用CFileDialog開啟檔案對話方塊,獲得檔案路徑 -windows程式設計Windows程式設計
- #用openfiledialog檔案和savefileDialog開啟和儲存檔案
- c#—OpenFileDialog(開啟檔案對話方塊)和new關鍵字的用法C#
- Win10系統怎麼禁用“刪除檔案”對話方塊_win10禁用“刪除檔案”對話方塊的方法Win10
- 檔案儲存
- 物件儲存 vs 檔案儲存 vs 塊儲存,選哪個?物件
- Android下載網路pdf檔案儲存至本地Android
- Android 檔案儲存Android
- CSV檔案儲存
- 儲存json檔案JSON
- iis實現點選檔案下載而不是開啟檔案
- 資料儲存--檔案儲存
- CEPH分散式儲存搭建(物件、塊、檔案三大儲存)分散式物件
- Springboot整合MongoDB儲存檔案、讀取檔案Spring BootMongoDB
- python 儲存檔案jsonPythonJSON
- hive檔案儲存格式Hive
- Flutter持久化儲存之檔案儲存Flutter持久化
- win10 hosts檔案儲存總是彈出另存為如何修復Win10
- Asp.net C# 檔案下載,附件下載程式碼案例,不顯示檔案路徑ASP.NETC#
- 檔案下載
- 檔案程式設計、檔案下載程式設計
- SpringMVC檔案上傳下載(單檔案、多檔案)SpringMVC
- dotnet C# 使用 SHFileOperation 呼叫 Win32 的檔案複製對話方塊C#Win32
- Android 檔案儲存淺析Android
- IPFS的檔案儲存模式模式
- 修改並儲存hosts檔案
- 企業檔案安全儲存
- 如何在Response.Redirect前彈出alert對話方塊
- Tkinter (45) 彈出的對話方塊 Pup-up dialogs
- Fabric 1.0原始碼分析(2) blockfile(區塊檔案儲存)原始碼BloC
- 【Python3網路爬蟲開發實戰】5-資料儲存-1 檔案儲存-2 JSON檔案儲存Python爬蟲JSON
- 物件儲存、檔案儲存、塊儲存這三者之間有什麼區別?物件
- 【ASP.NET Core】Blazor+MiniAPI完成檔案下載ASP.NETBlazorAPI