如何使用 GroupDocs.Merger for Java 合併 XLAM 檔案
合併多個 Excel 宏啟用外掛檔案 (.xlam) 可能是一項繁瑣的手動工作,但當您使用 GroupDocs.Merger for Java 時,如何合併 xlam 檔案就變得簡單直觀。本教學將逐步說明您所需的一切——從環境設定到精確的 API 呼叫——讓您在數分鐘內整合外掛,保持工作流程順暢。
快速解答
- 我可以使用 GroupDocs.Merger 合併 .xlam 檔案嗎? 是的,該函式庫原生支援 XLAM 合併。
- 需要哪個 Java 版本? Java 8 或更新版本。
- 開發需要授權嗎? 免費試用可用於測試;正式環境需購買授權。
- 一次可以合併多少檔案? 單次操作最多可合併 100 個 XLAM 檔案(受記憶體限制)。
- 合併是否無損? 該函式庫會完整保留巨集、VBA 程式碼以及嵌入資源,未作任何變更。
GroupDocs.Merger for Java 是什麼?
GroupDocs.Merger for Java 是一個商業 Java 函式庫,提供高階 API 用於合併、分割和操作各種文件格式,包括 Excel 外掛、PDF、Word 與 PowerPoint 檔案。它在內部處理複雜的檔案結構,使開發者無需關注底層格式細節即可操作文件。
為何使用 GroupDocs.Merger 合併 XLAM 檔案?
GroupDocs.Merger 處理 50 多種輸入與輸出格式,且能在不將整個檔案載入記憶體的情況下處理 數百頁的文件,與簡單檔案串接相比,可將最高記憶體使用量降低至 70 %。這使其成為企業規模外掛部署管線的理想選擇。
前置條件
- Java Development Kit (JDK) 8+ – 確保與函式庫的位元碼相容。
- IDE – IntelliJ IDEA、Eclipse 或您偏好的任何編輯器。
- 建置工具 – Maven 或 Gradle 用於相依管理。
- 基本的 Java 知識 – 您應能輕鬆建立簡易專案並執行
main方法。
設定 GroupDocs.Merger for Java
安裝說明
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:
您也可以從官方發行頁面下載最新的 JAR: GroupDocs.Merger for Java releases.
取得授權
- 免費試用 – 在 GroupDocs 網站註冊並取得試用金鑰。
- 臨時授權 – 申請臨時授權以延長評估時間。
- 完整購買 – 在 GroupDocs 商店購買正式授權: GroupDocs。
基本初始化與設定
在加入相依性後的第一步是建立 Merger 實例。Merger 類別是核心元件,負責協調支援文件類型的合併操作。
import com.groupdocs.merger.Merger;
public class MergeXlamFeature {
public static void main(String[] args) throws Exception {
String outputFolder = "YOUR_OUTPUT_DIRECTORY";
Merger merger = new Merger("YOUR_DOCUMENT_DIRECTORY/SAMPLE_XLAM");
// Additional setup and usage code
}
}
如何在 Java 中合併 XLAM 檔案?
將每個 XLAM 檔案載入 Merger 實例,對每個額外檔案呼叫 join(),最後使用 save() 將合併後的外掛寫入磁碟。整個流程僅需 三行簡潔程式碼,非常適合 CI/CD 管線或一次性腳本。
步驟 1:初始化 Merger 物件
使用您想作為基礎的第一個 XLAM 檔案建立主要的 Merger 物件。
Merger merger = new Merger("YOUR_DOCUMENT_DIRECTORY/SAMPLE_XLAM");
步驟 2:加入其他 XLAM 檔案
join() 方法會將每個後續的 XLAM 檔案附加至現有文件,並保留巨集程式碼、自訂 UI 功能區以及任何嵌入資源。
merger.join("YOUR_DOCUMENT_DIRECTORY/SAMPLE_XLAM_2");
步驟 3:儲存合併後的檔案
save() 方法會將合併後的文件寫入指定的檔案路徑。
String outputFile = new File(outputFolder, "merged.xlam").getPath();
merger.save(outputFile);
說明:
- 參數 – 為每個來源檔案及目標檔案提供絕對或相對路徑。
- 目的 – 將多個外掛整合為單一套件,簡化部署與版本管理。
常見問題與解決方案
- 檔案路徑錯誤 – 確認所有路徑為絕對路徑或相對於工作目錄正確解析。
- 記憶體不足 – 對於非常大的 XLAM 集合,可增加 JVM 堆積大小 (
-Xmx2g) 或將檔案分批處理。 - 授權例外 – 確保授權金鑰正確載入;否則函式庫會拋出
LicenseException。
實務應用
合併 .xlam 檔案在多種實務情境中表現卓越:
- 集中式外掛管理 – 管理員可將單一檔案部署至所有工作站,減少更新負擔。
- 複雜解決方案 – 將功能分散於多個外掛的專案(例如資料連接器、UI 擴充)可打包合併,以便於部署。
- 版本同步 – 多位開發者共同貢獻巨集時,單一合併檔案可確保團隊行為一致。
效能考量
- 記憶體佔用 – GroupDocs.Merger 以串流方式處理資料,即使是 200 MB 的 XLAM 套件,實際佔用的記憶體也低於 50 MB。
- 垃圾回收 – 合併完成後,將大型
InputStream物件設為 null,以協助 GC。 - 效能分析 – 使用 Java Flight Recorder 或 VisualVM 監控 CPU 使用率;在現代 CPU 上合併 100 個檔案通常在 2 秒內完成。
常見問答
Q: 除了 .xlam,GroupDocs.Merger 還能處理哪些檔案格式?
A: 該函式庫支援超過 50 種格式,包括 PDF、DOCX、PPTX、XLSX,以及 PNG、JPEG 等影像類型。
Q: 我可以合併受密碼保護的 Excel 檔案嗎?
A: 可以。於建立 Merger 實例時提供密碼,函式庫會自動解密並合併。
Q: 合併的巨集數量有上限嗎?
A: 沒有硬性上限;實際限制取決於可用記憶體與 JVM 堆積大小。
Q: 若遇到錯誤,我該如何取得支援?
A: 透過官方支援渠道聯繫,或在社群論壇發問: GroupDocs forums。
Q: 合併後的 XLAM 會保留 VBA 專案簽章嗎?
A: 會,現有的數位簽章會被保留,確保安全政策不受影響。
資源
- 文件:完整指南請見 GroupDocs.Merger Java Docs
- API 參考:詳細方法清單請見 GroupDocs API Reference
- 下載:從 GroupDocs Downloads 取得最新 JAR
- 購買與授權:於 GroupDocs Purchase 或 Temporary License 購買或取得臨時授權
- 支援:前往 GroupDocs Forum 獲取社群協助與疑難排解技巧。
最後更新: 2026-06-06
測試環境: GroupDocs.Merger 23.10 for Java
作者: GroupDocs