使用 GroupDocs.Merger for Java 合併多個文件

GroupDocs.Merger for Java 是一個函式庫,可程式化地將各種文件格式合併為單一檔案。在現代企業中,您常常需要 合併多個文件——無論是整合月度報告、彙編研究論文,或是建立主專案檔案。本教學將示範如何使用 GroupDocs.Merger for Java 快速、可靠且大規模地合併多個文件。

快速解答

  • 什麼是「合併多個文件」? 這表示將兩個或多個 Word、PDF 或其他支援的檔案結合成一個連續的文件,同時保留格式。
  • 哪個 Java 函式庫最適合此需求? GroupDocs.Merger for Java 提供簡潔的 API,支援 DOC、DOCX、PDF、XLSX、PPTX 以及超過 30 種其他格式。
  • 我需要授權嗎? 提供免費試用;在正式環境部署時需購買商業授權。
  • 可以合併大型 Word 文件嗎? 可以——GroupDocs.Merger 在順序合併時,能處理高達 500 MB 的檔案,且使用的記憶體少於 200 MB。
  • 能合併受密碼保護的檔案嗎? 完全可以;只需在載入每個受保護的文件時提供密碼。

什麼是「合併多個文件」?

合併多個文件是指將兩個或多個獨立的檔案(例如 Word、PDF 或其他支援的格式)串接成單一輸出檔案。此過程會保留每個來源的版面配置、樣式、頁首、頁尾、表格、圖片以及嵌入物件,確保合併後的文件看起來無縫且專業。

為什麼要合併多個文件?

合併可節省手動複製貼上的時間,消除版本控制的困擾,並確保合併內容的外觀一致。GroupDocs.Merger 能在一般伺服器上於 30 秒內處理高達 500 MB 的文件,且支援 30 多種輸入與輸出格式,是處理多樣檔案集合的多功能選擇。

前置條件

  • Java Development Kit (JDK) 8 或更新版本
  • Maven 或 Gradle 用於相依性管理
  • GroupDocs.Merger for Java(最新版本)
  • 基本了解 Java I/O 與套件處理

設定 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 取得二進位檔。

若要開始試用或購買授權,請前往 purchase page 並在需要時申請臨時授權。

什麼是 GroupDocs.Merger for Java?

GroupDocs.Merger for Java 是純 Java SDK,能合併 DOC、DOCX、PDF、XLSX、PPTX 以及許多其他格式,且不需外部軟體。它透過串流資料處理大型檔案,降低記憶體使用量。

基本初始化

Merger 是 GroupDocs.Merger 中的主要類別,代表待合併的文件,並提供加入與儲存檔案的方法。加入相依性後,建立指向您欲作為基礎的第一個文件的 Merger 實例。

import com.groupdocs.merger.Merger;

// Initialize your merger instance
Merger merger = new Merger("path/to/your/source.doc");

如何使用 GroupDocs.Merger for Java 合併多個文件

合併工作流程包括載入基礎文件、依序加入每個額外檔案,最後將結果儲存至目標位置。透過一次處理一個檔案,函式庫會串流資料並保持低記憶體使用,這在生產環境處理大型 DOC 或 PDF 檔案時尤為重要。

步驟 1:定義輸出路徑

指定合併文件的儲存位置。將 YOUR_OUTPUT_DIRECTORY 替換為您選擇的資料夾路徑。

String outputFolder = "YOUR_OUTPUT_DIRECTORY";
String outputFile = new File(outputFolder, "merged.doc").getPath();

步驟 2:載入第一個來源文件

使用初始的 DOC 檔案建立 Merger 物件。將 YOUR_DOCUMENT_DIRECTORY 調整為您的檔案所在位置。

Merger merger = new Merger("YOUR_DOCUMENT_DIRECTORY/SAMPLE_DOC");

步驟 3:加入其他文件

join 方法會將指定的文件加入目前的合併佇列,保留其原始格式。對每個想要合併的額外檔案呼叫 join 方法。此步驟可依需求重複多次。

merger.join("YOUR_DOCUMENT_DIRECTORY/SAMPLE_DOC_2");

步驟 4:儲存合併後的文件

將所有加入的檔案寫入單一輸出檔案。

merger.save(outputFile);

GroupDocs.Merger 如何處理受密碼保護的檔案?

當文件被加密時,您需將密碼傳入 Merger 建構子。SDK 會即時解密來源檔案,與其他檔案合併,若您同時提供輸出密碼,最終檔案亦可重新加密。此機制確保受保護的內容在整個過程中保持安全。

常見問題與解決方案

  • FileNotFoundException: 請確認所有檔案路徑正確,且使用絕對路徑或已正確解析的相對路徑。
  • 磁碟空間不足: 大型合併可能產生超過 200 MB 的檔案,請確保目標磁碟有足夠的可用空間。
  • 權限錯誤: 為 Java 程序授予來源檔案的讀取權限以及輸出資料夾的寫入權限。
  • 合併大型 Word 文件: 如示範般一次處理一個文件以降低記憶體使用,避免同時將所有檔案載入記憶體。

實務應用案例

  1. 整合報告: 將月度或季度報告合併成單一檔案,供高層管理檢閱。
  2. 研究彙編: 在提交期刊前,將多篇研究論文或論文章節合併。
  3. 專案文件: 將專案計畫、會議記錄與進度更新彙整成主文件,以供存檔或稽核使用。

合併大型 Word 文件的效能技巧

  • 順序處理: 依序載入、加入並儲存每個文件,以保持記憶體占用低。
  • 釋放資源: 儲存完成後,讓 Merger 參考超出範圍或設為 null,即時釋放記憶體。
  • 監控系統資源: 使用 Java 效能分析工具(如 VisualVM)觀察大量合併時的 CPU 與記憶體使用情況,特別是處理超過 300 MB 的檔案時。

常見問答

Q:我可以一次合併超過兩個文件嗎?
A:可以,您可以重複呼叫 join 以加入任意數量的文件。

Q:GroupDocs.Merger 支援哪些檔案格式?
A:支援超過 30 種格式,包括 DOC、DOCX、PDF、XLSX、PPTX、HTML 以及多種影像類型。

Q:合併過程中發生錯誤該如何處理?
A:將合併邏輯包在 try‑catch 區塊中,並依需求處理 IOException、FileNotFoundException 或 SecurityException。

Q:我需要在伺服器上安裝額外軟體嗎?
A:不需要——GroupDocs.Merger 是純 Java 函式庫,只要有 JVM 即可執行。

Q:能合併受密碼保護的文件嗎?
A:可以,為每個受保護的檔案在建立 Merger 實例時提供密碼。

其他資源


最後更新: 2026-09-26
測試環境: GroupDocs.Merger 最新版(Java)
作者: GroupDocs

相關教學