批次處理文件:使用 GroupDocs.Merger for Java 載入受密碼保護的檔案

處理受密碼保護的文件是需要在 Java 應用程式中 批次處理文件 的開發人員常見的挑戰。在本指南中,您將學習如何使用 GroupDocs.Merger for Java 載入、操作,並最終批次處理受密碼保護的文件。完成本教學後,您即可將此功能整合到任何以文件為中心的工作流程中。

快速回答

  • 本指南的主要目的為何? 載入受密碼保護的檔案,以便使用 GroupDocs.Merger 進行批次處理文件。
  • 需要哪個函式庫? GroupDocs.Merger for Java(最新版本)。
  • 是否需要授權? 免費試用可用於測試;正式環境需購買永久授權。
  • 支援的 Java 版本為何? JDK 8 或以上。
  • 能否一次處理多個檔案? 可以——載入每個檔案後,即可將其加入批次操作(合併、分割、重新排序等)。

什麼是文件的批次處理?

批次處理指的是在單一自動化工作流程中處理一系列檔案——合併、分割、重新排序頁面或提取資料——無需對每個文件逐一人工干預。當這些檔案受密碼保護時,必須先提供正確的憑證,才能執行任何批次操作。

為何使用 GroupDocs.Merger for Java?

  • 統一的 API,支援多種格式(PDF、DOCX、XLSX、PPTX 等)。
  • 內建安全處理,透過 LoadOptions
  • 可擴展的效能,適用於大規模批次作業。
  • 簡易整合,可直接加入現有的 Java 專案。

前置條件

  • GroupDocs.Merger for Java 函式庫——透過 Maven、Gradle 或直接下載安裝。
  • Java Development Kit (JDK) 8+
  • IDE(如 IntelliJ IDEA 或 Eclipse)。
  • 基本的 Java 知識。

設定 GroupDocs.Merger for Java

安裝資訊

Maven:

<dependency>
    <groupId>com.groupdocs</groupId>
    <artifactId>groupdocs-merger</artifactId>
    <version>latest-version</version>
</dependency>

Gradle:

implementation 'com.groupdocs:groupdocs-merger:latest-version'

直接下載:
如需直接下載,請前往 GroupDocs.Merger for Java releases 取得最新版本。

取得授權

  1. 免費試用 – 從 GroupDocs 下載頁面 開始免費試用。
  2. 臨時授權 – 透過 GroupDocs Temporary License 取得,以進行延長測試。
  3. 購買 – 若需完整功能與支援,請考慮從 GroupDocs Purchase page 購買授權。

基本初始化

import com.groupdocs.merger.Merger;

String filePath = "path/to/your/document.docx";
Merger merger = new Merger(filePath);

如何批次處理受密碼保護的文件

載入受密碼保護的文件

步驟 1:使用密碼定義 Load Options

import com.groupdocs.merger.domain.options.LoadOptions;

String filePath = "YOUR_DOCUMENT_DIRECTORY/SAMPLE_DOCX_PROTECTED";
LoadOptions loadOptions = new LoadOptions("SAMPLE_PASSWORD");

LoadOptions 物件攜帶解鎖檔案所需的密碼。

步驟 2:使用 Load Options 初始化 Merger

import com.groupdocs.merger.Merger;

// Initialize the Merger with file path and load options
Merger merger = new Merger(filePath, loadOptions);

現在文件已可進行任何批次操作——與其他檔案合併、分割成頁面,或重新排序內容。

步驟 3:使用常數集中管理檔案路徑

class Constants {
    public static final String SAMPLE_DOCX_PROTECTED = "YOUR_DOCUMENT_DIRECTORY/SAMPLE_DOCX_PROTECTED";
}

使用常數類別可讓程式碼保持整潔,特別是當批次作業中需處理數十或數百個檔案時。

範例批次工作流程(概念)

  1. 收集 所有受保護的檔案路徑至 List<String>
  2. 迴圈 逐一處理清單,為每個檔案使用其專屬的 LoadOptions 建立 Merger 實例。
  3. 加入 每個 Merger 實例至主合併操作 (Merger.merge(...))。
  4. 釋放 每個 Merger 於處理完畢後,以釋放記憶體。

專業提示: 將迴圈包裹在 try‑with‑resources 區塊中,或明確呼叫 merger.close(),以確保資源及時釋放。

實務應用

  1. 文件合併: 將數十份受密碼保護的合約合併為單一主檔案。
  2. 頁面重新排序: 在多個受保護的 PDF 之間重新排列頁面,且無需永久解鎖。
  3. 中繼資料編輯: 在提供一次密碼後,更新作者或標題等欄位。

將 GroupDocs.Merger 與雲端儲存(例如 AWS S3、Azure Blob)整合,可程式化地取得受保護檔案、批次處理,並將結果回寫。

大批次處理的效能考量

  • 記憶體管理: 任務完成後關閉每個 Merger 物件。
  • 批次大小: 將檔案分批處理(例如 50‑100 份文件),以免佔滿 JVM 堆積記憶體。
  • 平行處理: 使用 Java 的 ExecutorService 同時執行獨立的合併任務,但需監控 CPU 使用率。

常見問題

問:我可以同時批次處理不同類型的檔案(PDF、DOCX、XLSX)嗎?
答: 是的。GroupDocs.Merger 支援多種格式;只需為每個檔案提供相應的 LoadOptions 即可。

問:如果密碼錯誤會發生什麼情況?
答: 函式庫會拋出 PasswordException。捕獲此例外、記錄問題,並可選擇在批次中跳過該檔案。

問:一次批次能合併多少文件有上限嗎?
答: 沒有硬性上限,但實際受限於可用記憶體與 JVM 堆積大小。大量文件請使用分塊處理。

問:批次中的每個文件是否需要單獨授權?
答: 不需要。單一有效的 GroupDocs.Merger 授權即可覆蓋應用程式內所有操作。

問:在哪裡可以找到更詳細的 API 文件?
答: 請前往 GroupDocs.Merger Java Docs 查看完整參考資料。

資源


最後更新: 2026-01-13
測試版本: GroupDocs.Merger 23.10(撰寫時的最新版本)
作者: GroupDocs