PDF to MemoryStream C#

This article was translated from English: Does it need improvement?
Translated
View the article in English

我們可以在 C# .NET 中導出 PDF 到 MemoryStream 而無需觸碰檔案系統。 這可以通過 .NET 命名空間 System.IO 中的 MemoryStream 物件實現。

快速入門:將 PDF 轉換為 MemoryStream

使用 IronPDF 的直觀 API 輕鬆將您的 PDF 檔案轉換為 MemoryStream。 本指南幫助開發人員快速入門,將 PDF 加載並導出到 MemoryStream,完美地無縫整合到 .NET 應用中。 按照此簡明示例增強您在 C# 中的 PDF 處理能力。

cs :title=Export a PDF to a MemoryStream in one line! using var stream = new IronPdf.ChromePdfRenderer().RenderHtmlAsPdf("<h1>Hello Stream!</h1>").Stream;

class="hsg-featured-snippet">

最小化工作流程(5 步)

  1. 下載 IronPDF C# 庫將 MemoryStream 轉換為 PDF
  2. 將現有的 PDF 加載為 PdfDocument 物件
  3. 從 URL 或 HTML 字串/檔案渲染新的 PDF
  4. 使用 Stream 方法和 BinaryData 屬性將 PDF 轉換為 Stream
  5. 將 MemoryStream 提供給 Web,包括 MVC 和 ASP.NET

將 PDF 保存到記憶體

一個 IronPdf.PdfDocument 可以直接以兩種方式保存到記憶體中:

csharp :path=/static-assets/pdf/content-code-examples/how-to/pdf-to-memory-stream-to-stream.cs


從記憶體向 Web 提供 PDF

要在網頁上提供或導出 PDF,您需要將 PDF 文件作為二進制數據發送,而不是 HTML。 您可以在此 導出和保存 PDF 文件的 C# 指南中找到更多資訊。

這裡是 MVC 和 ASP.NET 的快速示範:

使用 MVC 導出 PDF

如下代碼片段中的 Stream 是從 IronPDF 獲取的二進制數據。 響應的 MIME 類型是 'application/pdf',指定位為 'download.pdf'。

``csharp using System.Web.Mvc; using System.IO;

public ActionResult ExportPdf() { // Assume pdfAsStream is a MemoryStream containing PDF data MemoryStream pdfAsStream = new MemoryStream();

return new FileStreamResult(pdfAsStream, "application/pdf")
{
    FileDownloadName = "download.pdf"
};

} ``

使用 ASP.NET 導出 PDF

類似於上面的示例,Stream 是從 IronPDF 獲取的二進制數據。 然後配置並刷新響應,以確保將其發送到客戶端。

``csharp using System.IO; using System.Web;

public class PdfHandler : IHttpHandler { public void ProcessRequest(HttpContext context) { // Assume pdfAsStream is a MemoryStream containing PDF data MemoryStream pdfAsStream = new MemoryStream();

    context.Response.Clear();
    context.Response.ContentType = "application/octet-stream";
    context.Response.OutputStream.Write(pdfAsStream.ToArray(), 0, (int)pdfAsStream.Length);
    context.Response.Flush();
}

public bool IsReusable => false;

}

常見問題解答

如何在 C# 中將 PDF 檔案轉換為 MemoryStream?

您可以使用 IronPDF 將 C# 中的 PDF 轉換為 MemoryStream。將您的 PDF 作為PdfDocument物件加載,然後使用PdfDocument.Stream屬性將其匯出為System.IO.MemoryStream

使用 IronPDF 將 PDF 檔案儲存到記憶體的方法有哪些?

IronPDF 提供了兩種將 PDF 儲存到記憶體的方法:使用PdfDocument.Stream匯出為MemoryStream ,使用PdfDocument.BinaryData匯出為位元組數組。

如何在 ASP.NET 應用程式中以二進位資料形式提供 PDF 檔案?

在 ASP.NET 應用程式中,您可以透過設定Response物件以傳送 MIME 類型為「application/pdf」的MemoryStream來提供 PDF 作為二進位資料。

是否可以使用 C# 從 HTML 建立 PDF?

是的,您可以使用 IronPDF 的PdfDocument物件從 HTML 字串或檔案渲染 PDF,然後將其轉換為MemoryStream

如何在 Web 應用程式中處理記憶體中的 PDF 檔案?

對於 Web 應用程序,您可以使用 IronPDF 將 PDF 文件完全在記憶體中處理,方法是將 PDF 匯出到MemoryStream並直接將其提供給客戶端,從而避免與文件系統互動。

在.NET中使用MemoryStream進行PDF操作有哪些好處?

在 .NET 中使用MemoryStream進行 PDF 操作可以實現高效的記憶體管理,並透過將資料保存在記憶體中並避免磁碟寫入來提高安全性,這在 Web 應用程式中尤其有用。

我可以用 C# 將 MemoryStream 轉換回 PDF 檔案嗎?

是的,可以使用 IronPDF 將包含 PDF 資料的MemoryStream儲存回 PDF 文件,方法是將流的內容寫入文件。

如何在MVC Web應用程式中匯出PDF文件?

在 MVC Web 應用程式中,您可以使用包含 PDF 資料的MemoryStream並將其作為FileStreamResult傳回,將 MIME 類型設為“application/pdf”,從而匯出 PDF。

IronPDF 是否完全相容於 .NET 10 的記憶體流操作?

是的-IronPDF 正式相容 .NET 10。該程式庫支援 .NET 10 以及 .NET 9、8、7、6、5 和 .NET Standard 2.0+ 版本。您可以在 .NET 10 專案中使用PdfDocument.StreamPdfDocument.BinaryData ,無需任何額外配置。

Curtis Chau
技術作家

Curtis Chau 擁有卡爾頓大學計算機科學學士學位,專注於前端開發,擅長於 Node.js、TypeScript、JavaScript 和 React。Curtis 熱衷於創建直觀且美觀的用戶界面,喜歡使用現代框架並打造結構良好、視覺吸引人的手冊。

除了開發之外,Curtis 對物聯網 (IoT) 有著濃厚的興趣,探索將硬體和軟體結合的創新方式。在閒暇時間,他喜愛遊戲並構建 Discord 機器人,結合科技與創意的樂趣。

準備好開始了嗎?
Nuget 下載 16,154,058 | 版本: 2025.11 剛剛發布