如何使用 GroupDocs.Redaction for .NET 載入文件

在本指南中,您將了解 如何載入文件 到 GroupDocs.Redaction for .NET,支援多種來源——本機磁碟、記憶體串流,甚至受密碼保護的檔案。無論您是構建遮蔽服務、自動合規管線,或是簡單的桌面工具,掌握這些載入技術即可快速且可靠地為任何文件做好安全遮蔽的準備。

快速解答

  • 第一步是什麼? 安裝 GroupDocs.Redaction NuGet 套件,並加入 using GroupDocs.Redaction; 命名空間。
  • 我可以從串流載入 PDF 嗎? 可以——將包含 PDF 位元組的 MemoryStream 傳遞給 RedactionEngine 建構函式。
  • 如何開啟受密碼保護的檔案? 在建立 RedactionEngine 時,將密碼作為第二個參數提供。
  • 檔案大小有上限嗎? GroupDocs.Redaction 可處理最高 2 GB 的檔案,且不會將整個檔案載入記憶體。
  • 開發時需要授權嗎? 測試可使用臨時授權;正式上線則需正式授權。

如何載入文件?

RedactionEngine 是用於載入及準備文件進行遮蔽的核心類別。透過建立 RedactionEngine 實例,傳入檔案路徑(或串流)以及必要時的密碼,即可載入文件。此單行呼叫會讀取檔案、驗證格式,並建構可供遮蔽的內部文件模型。例如,從磁碟載入 PDF 只需 new RedactionEngine("sample.pdf")。若需要密碼,使用 new RedactionEngine("secret.pdf", "MyPassword")。從串流載入則以 MemoryStream 參數遵循相同模式。

什麼是 GroupDocs.Redaction?

GroupDocs.Redaction 是一套 .NET 函式庫,讓開發人員能夠定位並永久移除 PDF、DOCX、PPTX 以及超過 30 種其他檔案格式中的敏感內容。它提供像素級精確的遮蔽、OCR 支援與批次處理,適用於需要在多種文件類型間提供可靠且安全資料保護的合規應用程式。

為何在文件載入時使用 GroupDocs.Redaction?

GroupDocs.Redaction 提供高效能、低記憶體的串流引擎,能處理最高 2 GB 的大型檔案,同時內建支援受密碼保護的文件。速度、彈性與安全性的結合,使其成為需要在套用遮蔽規則前快速且安全載入文件的開發人員的首選。

  • 廣泛的格式支援: 處理 30+ 種文件類型,包括 PDF、Word、Excel、PowerPoint 以及影像檔案。
  • 高效能串流: 使用低記憶體串流引擎處理最高 2 GB 的檔案,免除完整載入檔案的需求。
  • 密碼處理: 只需單一方法重載即可無縫開啟 受密碼保護的 PDF 與 Office 檔案,降低程式碼複雜度。
  • 執行緒安全 API: 允許在多執行緒服務中同時載入多個文件,避免競爭條件。

先決條件

  • .NET 6.0 或更新版本(此函式庫亦支援 .NET Core 3.1 與 .NET Framework 4.6.1+)。
  • 有效的 GroupDocs.Redaction 授權(測試用臨時授權)。
  • 可取得您欲遮蔽的文件檔案(本機路徑、位元組陣列或串流)。

從不同來源載入文件

從本機磁碟載入

在建立引擎時提供檔案的絕對或相對路徑。函式庫會自動偵測格式並為遮蔽做準備。

從記憶體串流載入

將檔案讀取為 byte[],再包裝成 MemoryStream,並將串流傳入建構函式。此方式非常適合接收上傳檔案的 Web API。

載入受密碼保護的檔案

當文件被加密時,將密碼作為第二個參數提供。引擎會即時解密檔案,並讓內容可供遮蔽,無需額外步驟。

常見問題與解決方案

  • 錯誤:「不支援的檔案格式。」
    請確認檔案副檔名屬於支援的格式且檔案未損毀。GroupDocs.Redaction 支援超過 30 種格式;請參考 API 文件取得完整清單。

  • 密碼相關例外。
    請確保密碼字串正確且檔案確實需要密碼。對受保護的檔案傳入空字串會觸發驗證錯誤。

  • 大型檔案導致記憶體不足。
    請使用串流重載 (RedactionEngine(Stream)) 而非以路徑載入檔案。即使是上百頁的 PDF,也能保持低記憶體使用。

常見問答

Q: 我可以像載入 PDF 那樣載入 DOCX 檔案嗎?
A: 可以——當您傳入檔案路徑或串流時,GroupDocs.Redaction 會自動偵測 DOCX 格式,無需額外程式碼。

Q: 函式庫是否支援從 Azure Blob Storage 載入檔案?
A: 當然支援。將 Blob 取得為位元組陣列或串流,然後傳入 RedactionEngine 建構函式。

Q: 若提供錯誤的密碼會發生什麼事?
A: 建構函式會拋出 PasswordIncorrectException。捕捉此例外以提示使用者輸入正確密碼。

Q: 是否可以同時載入多個文件?
A: 可以——每個 RedactionEngine 實例皆獨立且執行緒安全,允許在背景服務中平行處理。

Q: 是否需要手動釋放 RedactionEngine?
A: 引擎實作 IDisposable。呼叫 Dispose() 或以 using 區塊包住,以即時釋放檔案句柄。

其他資源


最後更新: 2026-06-11
測試環境: GroupDocs.Redaction 5.5 for .NET
作者: GroupDocs

相關教學