使用 ASP.NET 和 Visual C# .NET 將二進位檔寫入瀏覽器
本文會建立範例頁面,示範如何使用 Visual C# .NET 從檔案擷取二進位數據,然後將數據寫出至瀏覽器。 雖然此示範使用 Adobe Acrobat (.pdf) 檔案,但您可以將此程式套用至其他二進位檔格式。
原始產品版本: ASP.NET
原始 KB 編號: 306654
需求
- Microsoft .NET Framework
- Windows
- Internet Information Server (IIS)
使用 Visual C# 建立 ASP.NET Web 應用程式
本節示範如何建立名為 BinaryDemo 的新 ASP.NET Web 應用程式:
- 開啟 Visual Studio .NET
- 從 [ 檔案] 功能表中,指向 [ 新增],然後單擊 [ 專案]。
- 在 [項目 類型] 底下,按兩下 [Visual C# 專案]。 在 [範本] 底下,按兩下 [ASP.NET Web 應用程式]。
- 在 [ 名稱] 文本框中,輸入 BinaryDemo。 在 [ 位置] 文本框中,輸入 ServerName。 如果您使用本地伺服器,請將位置保留為
http://localhost
。
將 PDF 檔案新增至專案
若要設定您的專案,以便在 [ 建立 ASPX] 頁面 一節中新增並執行程式代碼,您必須先將 Adobe Acrobat (.pdf) 檔案新增至目前的專案。
若要在 Visual Studio .NET 中執行此動作,請遵循下列步驟:
- 在 方案總管 中,以滑鼠右鍵按兩下項目節點,按兩下 [新增],然後按兩下 [新增現有專案]。
- 流覽至系統上 .pdf 檔案的位置。
- 按兩下以反白顯示檔案,然後按兩下 [ 開啟]。
- 在 Visual Studio .NET 方案總管 中,以滑鼠右鍵按兩下檔案,然後按兩下 [重新命名]。 重新命名 .pdf 檔,使其符合下列程式代碼中使用的檔名 Acrobat.pdf 。
此外,請確定 Adobe Acrobat Reader 已安裝在檢視.aspx頁面的用戶端電腦上,讓瀏覽器可以正確地讀取和轉譯二進位數據。 您可以從 Adobe 網站下載 Adobe Acrobat Reader。
建立 ASPX 頁面
將名為 BinaryData.aspx 的新 .aspx 頁新增至目前的專案,如下所示:
在 方案總管 中,以滑鼠右鍵按兩下項目節點,按兩下 [新增],然後按兩下 [新增Web窗體]。
將頁面命名BinaryData.aspx,然後按兩下 [ 開啟]。
注意事項
請確定您的頁面已新增至專案,其層級與您在上一節中新增的 .pdf 檔案相同。 這非常重要,因為程式代碼會使用相對路徑來初始參考 .pdf 檔案。
在編輯器中,以滑鼠右鍵按兩下 [BinaryData.aspx],然後按兩下 [ 檢視程序代碼]。
反白顯示下列程式代碼,以滑鼠右鍵按下程式代碼,然後按下 [ 複製]。 在程式
Page_Load
代碼後置頁面的 事件中,單擊 [編輯] 功能表上的 [貼上] 以貼上程序代碼:private void Page_Load(object sender, System.EventArgs e) { //Set the appropriate ContentType. Response.ContentType = "Application/pdf"; //Get the physical path to the file. string FilePath = MapPath("acrobat.pdf"); //Write the file directly to the HTTP content output stream. Response.WriteFile(FilePath); Response.End(); }
在 [ 檔案] 功能表上,按兩下 [ 全部儲存]。
在 [ 建置] 功能表上,按兩下 [ 建置]。
若要執行程式代碼,請以滑鼠右鍵按兩下 方案總管 中的 [BinaryData.aspx],然後按兩下 [在瀏覽器中檢視]。 如果出現提示,請按兩下 [開 啟] 以在瀏覽器中開啟並轉譯檔案。
如果您想要使用上述程式代碼來支援其他二進位檔類型,您必須修改字串中的 ContentType
值,使其指定適當的檔案格式。 此字串的語法會格式化為 type/subtype
,其中 type
是一般內容類別,而 subtype
是特定的內容類型。
如需支援內容類型的完整清單,請參閱您的網頁瀏覽器檔或目前的 HTTP 規格。 下列清單概述一些常見的 ContentType
值:
text/HTML
image/GIF
image/JPEG
text/plain
Application/msword
Word 檔案) 的 (Application/x-msexcel
Excel 檔案) 的 (
參考資料
如需詳細資訊,請造訪下列網站:
如需本文的 Visual Basic .NET 版本,請參閱 如何使用 ASP.NET 和 Visual C# .NET 將二進位檔寫入瀏覽器。
協力廠商資訊免責聲明
本文提及的協力廠商產品是由與 Microsoft 無關的獨立廠商所製造。 Microsoft 不以默示或其他方式,提供與這些產品的效能或可靠性有關的擔保。
意見反應
https://aka.ms/ContentUserFeedback。
即將登場:在 2024 年,我們將逐步淘汰 GitHub 問題作為內容的意見反應機制,並將它取代為新的意見反應系統。 如需詳細資訊,請參閱:提交並檢視相關的意見反應