在 Java 中合併 XLSB 檔案的 GroupDocs.Merger 完全指南

管理多個 Excel Binary Workbook(XLSB)檔案可能令人頭疼,尤其是當您需要一個單一的合併工作簿來進行分析或報告時。如何有效合併 xlsb 檔案的答案是使用 GroupDocs.Merger for Java,這個函式庫只需幾行程式碼即可處理 XLSB 合併。在本教學中,您將了解如何設定函式庫、載入來源工作簿、加入其他檔案,並儲存合併結果——同時保持低記憶體使用量與高效能。

快速解答

  • 什麼函式庫可以在 Java 中合併 XLSB? GroupDocs.Merger for Java.
  • 需要多少行程式碼? 通常 3‑5 行即可完成完整合併。
  • 可以合併大型檔案嗎? 可以——它支援超過 1 GB 的檔案,且不需將整個文件載入記憶體。
  • 生產環境需要授權嗎? 商業使用需要有效的 GroupDocs 授權。
  • 支援 Maven 或 Gradle 嗎? 兩種建置工具皆完全支援。

如何在 Java 中合併 xlsb 檔案?

使用 new Merger("source.xlsb") 載入主要的 XLSB,對每個額外的工作簿呼叫 join("additional.xlsb"),最後使用 save("merged.xlsb") 儲存結果。這個三步流程在標準硬體上對一般 10 頁檔案可在一秒內完成完整合併,且在批次處理較大文件時亦能有效擴展。

什麼是 GroupDocs.Merger for Java?

GroupDocs.Merger for Java 是一個專用的 API,能以程式方式合併、分割與操作超過 50+ 種文件格式,包括 XLSB、DOCX、PDF、PPTX 以及各類影像。它可在不完整載入至記憶體的情況下處理數百頁的工作簿,與簡單檔案串接方式相比,可將記憶體消耗降低最多 70 %

前置條件

  • GroupDocs.Merger for Java(Maven、Gradle 或直接 JAR)。
  • Java Development Kit (JDK) 8+ 已安裝於您的機器上。
  • IntelliJ IDEA、Eclipse 或 NetBeans 等 IDE。
  • 基本的 Java 檔案處理知識。

設定 GroupDocs.Merger for Java

要將 GroupDocs.Merger 加入您的專案,請依照相應的建置工具說明操作。

Maven:
將以下相依性加入您的 pom.xml

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

Gradle:
在您的 build.gradle 檔案中加入以下內容:

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

Direct Download:
或者,從 GroupDocs.Merger for Java releases 下載最新版本。

取得授權

  • Free Trial: 先下載試用版。
  • Temporary License: 取得臨時授權以無限制探索全部功能。
  • Purchase: 長期生產使用請購買授權。

初始化與設定

Merger 類別是所有合併操作的入口點。加入相依性後,您可以使用主要 XLSB 檔案的路徑來實例化它:

import com.groupdocs.merger.Merger;

public class MergeXLSBFiles {
    public static void main(String[] args) throws Exception {
        String documentPath = "YOUR_DOCUMENT_DIRECTORY/sample1.xlsb";
        Merger merger = new Merger(documentPath);
        // Ready to add more files and merge
    }
}

實作指南

以下我們將實作分解為清晰、可執行的步驟。

載入來源 XLSB 檔案

概述:
首先載入將作為合併基礎的主要工作簿。

步驟:

  1. 初始化 Merger:
    使用 Merger 類別載入初始的 XLSB 檔案。
    import com.groupdocs.merger.Merger;
    
    public class LoadSourceXLSB {
        public static void run() throws Exception {
            String documentPath = "YOUR_DOCUMENT_DIRECTORY/sample1.xlsb";
            Merger merger = new Merger(documentPath);
            // Source XLSB file is now loaded
        }
    }
    

新增另一個 XLSB 檔案以合併

概述:
附加需要與來源合併的次要工作簿。

步驟:

  1. 加入檔案:
    join 方法會將另一個工作簿加入目前的合併佇列。
    import com.groupdocs.merger.Merger;
    
    public class AddXLSBFile {
        public static void run(Merger merger) throws Exception {
            String documentPath = "YOUR_DOCUMENT_DIRECTORY/sample2.xlsb";
            merger.join(documentPath); // Merges sample2.xlsb with the source
        }
    }
    

儲存合併後的 XLSB 檔案

概述:
將合併後的工作簿寫入磁碟。

步驟:

  1. 儲存輸出:
    save 方法會將合併後的工作簿寫入指定的檔案路徑。
    import com.groupdocs.merger.Merger;
    import java.io.File;
    
    public class SaveMergedXLSB {
        public static void run(Merger merger) throws Exception {
            String outputFolder = "YOUR_OUTPUT_DIRECTORY";
            String outputFile = new File(outputFolder, "merged.xlsb").getPath();
            merger.save(outputFile); // Saves the merged file
        }
    }
    

實務應用

GroupDocs.Merger for Java 在實務情境中表現出色:

  1. Data Consolidation(資料整合): 將多個部門的季度財務報告合併成單一工作簿,以供主管審閱。
  2. Batch Processing(批次處理): 自動合併 ERP 系統產生的每日匯出檔案。
  3. Cloud Integration(雲端整合): 將合併後的資料直接輸入至雲端分析平台,如 Azure Data Lake 或 AWS QuickSight。

效能考量

為了保持合併快速且記憶體高效:

  • Memory Management(記憶體管理): 此函式庫以串流方式處理資料,允許您合併每個高達 1 GB 的 XLSB 檔案,而無需將整個工作簿載入記憶體。
  • Batch Processing(批次處理): 處理數十個檔案時,將它們分成 5‑10 個一組,以維持低 GC 壓力並提升整體吞吐量。
  • Threading(執行緒): 對於 CPU 密集型工作負載,考慮使用 Java 的 ExecutorService 平行化 join 呼叫——此 API 在唯讀操作下是執行緒安全的。

常見問題與解決方案

  • Out‑of‑Memory Errors(記憶體不足錯誤): 確保使用串流 API(預設),並避免在大型工作簿上呼叫 loadAll()
  • File Path Errors(檔案路徑錯誤): 確認所有路徑為絕對路徑或正確相對於工作目錄解析。
  • License Exceptions(授權例外): 試用授權在 30 天後過期;在部署前請以永久金鑰取代。

常見問答

Q: 官方支援哪個 JDK 版本?
A: GroupDocs.Merger for Java 支援 JDK 8 至 JDK 21,並在最新的 LTS 版本上完成完整測試。

Q: 我可以合併受密碼保護的 XLSB 檔案嗎?
A: 可以——在使用重載建構子建立 Merger 實例時提供密碼。

Q: 合併檔案的工作表數量有上限嗎?
A: 沒有硬性上限,但極大型工作簿(10 000+ 工作表)可能會延長處理時間;建議使用批次合併。

Q: 我如何驗證合併後公式仍被保留?
A: 儲存後,在 Excel 中開啟合併檔案,檢查公式參照是否完整;GroupDocs.Merger 預設保留公式完整性。

Q: 函式庫是否直接支援雲端儲存(例如 AWS S3)?
A: 雖然核心 API 使用串流,但您可以從 S3 下載檔案為 InputStream,傳給 Merger,再將結果上傳回 bucket。

FAQ 區段

Q1: 哪些 JDK 版本與 GroupDocs.Merger for Java 相容?
A1: GroupDocs.Merger 相容於任何近期的 JDK 版本,請確保使用穩定版。

Q2: 我如何在不產生記憶體問題的情況下處理大型 XLSB 檔案?
A2: 將檔案分成較小批次處理,並最佳化程式碼以有效管理資源。

Q3: GroupDocs.Merger 能否用於除 XLSB 之外的其他檔案格式?
A4: 是的,它支援多種文件格式,包括 PDF、Word 文件等。

Q4: 同時合併的檔案數量有上限嗎?
A5: 雖然沒有硬性上限,但大量大型檔案會降低效能;必要時考慮分階段合併。

Q5: 我該如何排除檔案合併時的問題?
A6: 檢查常見錯誤,如檔案路徑不正確或格式不相容。請參考文件與支援論壇以獲得更多協助。

資源

如需更多資訊,請造訪以下資源:

探索這些資源以加深了解並提升您在 Java 中使用 GroupDocs.Merger 的實作。祝程式開發愉快!


最後更新: 2026-06-11
測試環境: GroupDocs.Merger 23.12 for Java
作者: GroupDocs

相關教學