如何在 Java 中使用 GroupDocs.Editor 產生 Excel

在本完整指南中,您將學習 如何在 Java 中產生 Excel,以及使用 GroupDocs.Editor 以程式方式編輯 Word 文件。無論您需要填寫 Excel 範本、客製化 Word 合約,或是提取嵌入字型以確保完美渲染,我們都會逐步說明每個步驟、解釋各設定的重要性,並展示適合大型檔案的效能友好模式。

介紹

自動化文件的建立與修改是現代 Java 應用程式的基石。透過即時產生 Excel 報表、依使用者客製化 Word 範本、以及提取字型以保留視覺忠實度,您可以消除手動工作、降低錯誤,並加速價值實現。GroupDocs.Editor for Java 提供單一高效能 API,支援 50+ 輸入與輸出格式,且能在不將整個檔案載入記憶體的情況下處理數百頁的活頁簿。本教學將完整示範如何解鎖這些功能。

快速解答

  • 什麼函式庫能實現如何在 Java 中產生 Excel? GroupDocs.Editor for Java。
  • 我可以在不載入整本活頁簿的情況下編輯單一 Excel 工作表嗎? 可以—使用 SpreadsheetEditOptions.setWorksheetIndex()。
  • 如何從 Word 文件中提取所有嵌入字型? 設定 WordProcessingEditOptions.setFontExtraction(FontExtractionOptions.ExtractAllEmbedded)。
  • 處理大型檔案時 Java 的最佳效能優化實踐是什麼? 及時釋放 EditableDocument 與 Editor 物件、重複使用載入選項,並為 Word 檔案停用分頁。
  • 生產環境需要授權嗎? 完整的 GroupDocs.Editor 授權會解鎖所有功能並移除評估限制。

什麼是 generate excel report java?

Generate excel report java 是指在 Java 應用程式中以程式方式建立或更新 Excel 活頁簿的過程。使用 GroupDocs.Editor,您可以載入範本、取代佔位符,並儲存結果——全部不需要安裝 Microsoft Office。它支援 .xlsx 與 .xls 格式,保留公式、樣式與資料驗證,且可針對特定工作表進行操作以降低記憶體使用。

為什麼在 Java 中編輯 Excel 和 Word 檔案?

直接從 Java 編輯文件可讓您構建端對端工作流程:產生發票、更新合約,或建立動態儀表板,全部自動化。GroupDocs.Editor 能 generate excel report java、提取字型,並 disable pagination word 以降低記憶體佔用,使您能在標準伺服器硬體上每分鐘處理上千個請求。

前置條件

在開始之前,請確保您已具備:

  • GroupDocs.Editor for Java(版本 25.3 或更新)。
  • Java Development Kit (JDK) 8 或以上。
  • 如 IntelliJ IDEA 或 Eclipse 等 IDE。
  • 基本的 Java 語法與 Maven/Gradle 建置工具知識。

設定 GroupDocs.Editor for Java

要在專案中整合 GroupDocs.Editor,請依照以下步驟操作:

Maven
將下列內容加入您的 pom.xml 檔案:

<repositories>
   <repository>
      <id>repository.groupdocs.com</id>
      <name>GroupDocs Repository</name>
      <url>https://releases.groupdocs.com/editor/java/</url>
   </repository>
</repositories>

<dependencies>
   <dependency>
      <groupId>com.groupdocs</groupId>
      <artifactId>groupdocs-editor</artifactId>
      <version>25.3</version>
   </dependency>
</dependencies>

Direct download
或者,從 GroupDocs.Editor for Java releases 下載程式庫。

授權取得

  • Free trial – 開始探索功能,無需承諾。
  • Temporary license – 如有需要,可延長評估時間。
  • Full license – 建議於正式環境使用,以解鎖全部功能並取得支援。

如何在 Java 中編輯 Word 文件?

載入您的 DOCX 檔案、套用自訂選項,並在幾行程式碼內儲存變更。EditableDocument 類別代表記憶體中的 Word 模型,而 Editor 類別負責載入與儲存的協調。您可以修改文字、圖片、表格與樣式,然後將文件匯出為 DOCX、PDF 或 HTML 格式。

Direct answer: 建立 Editor 實例,使用 WordProcessingLoadOptions 載入 DOCX,編輯取得的 EditableDocument(例如取代佔位符),最後以所需的輸出格式呼叫 save()。此三步流程同時支援簡單與複雜的 Word 編輯,且保持低記憶體使用。

EditableDocument 類別是 Word 檔案的記憶體表示,您可以從中讀取或寫入。Editor 類別管理載入、編輯與儲存文件的生命週期。

使用預設選項載入與編輯 Word 處理文件

WordProcessingLoadOptions 指定 Word 文件的載入方式,例如保留格式與中繼資料。

Direct answer: 使用 new Editor() 並呼叫 load("template.docx", new WordProcessingLoadOptions()) 取得 EditableDocument,修改內容後最後呼叫 save("output.docx", SaveFormat.Docx)。此預設選項方式適用於大多數直接編輯情境。

import com.groupdocs.editor.Editor;
import com.groupdocs.editor.EditableDocument;
import com.groupdocs.editor.options.WordProcessingLoadOptions;

String inputFilePath = "YOUR_DOCUMENT_DIRECTORY/sample.docx";
Editor editor1 = new Editor(inputFilePath, new WordProcessingLoadOptions());
EditableDocument defaultWordProcessingDoc = editor1.edit();

// Manipulate the document as needed
defaultWordProcessingDoc.dispose();
editor1.dispose();

使用自訂選項編輯 Word 處理文件

WordProcessingEditOptions 允許自訂編輯行為,包括分頁與字型提取。

Direct answer: 初始化 WordProcessingEditOptions,設定 setEnablePagination(false) 以關閉分頁,使用 setEnableLanguageInfo(true) 開啟語言中繼資料,並選擇 FontExtractionOptions.ExtractAllEmbedded 以提取所有嵌入字型。將此選項物件傳遞給 Editor.edit() 後再儲存。

WordProcessingEditOptions 類別讓您微調編輯流程,例如停用分頁以加速大型文件處理,或提取字型以確保渲染精確。

import com.groupdocs.editor.Editor;
import com.groupdocs.editor.EditableDocument;
import com.groupdocs.editor.options.WordProcessingEditOptions;
import com.groupdocs.editor.options.FontExtractionOptions;

String inputFilePath = "YOUR_DOCUMENT_DIRECTORY/sample.docx";
Editor editor1 = new Editor(inputFilePath, new WordProcessingLoadOptions());

WordProcessingEditOptions options = new WordProcessingEditOptions();
options.setEnablePagination(false);
options.setEnableLanguageInformation(true);
options.setFontExtraction(FontExtractionOptions.ExtractAllEmbedded);

EditableDocument editableDoc = editor1.edit(options);

// Manipulate the document as needed
editableDoc.dispose();
editor1.dispose();

使用另一種設定編輯 Word 處理文件

Direct answer: 您可以在單行程式碼中建立 WordProcessingEditOptions——new WordProcessingEditOptions(true, FontExtractionOptions.ExtractAllEmbedded)——以啟用語言資訊並提取所有字型,然後照常執行載入‑編輯‑儲存流程。

此快捷建構子減少樣板程式碼,同時仍提供對分頁、語言與字型提取的完整控制。

import com.groupdocs.editor.Editor;
import com.groupdocs.editor.EditableDocument;
import com.groupdocs.editor.options.WordProcessingEditOptions;

String inputFilePath = "YOUR_DOCUMENT_DIRECTORY/sample.docx";
Editor editor1 = new Editor(inputFilePath, new WordProcessingLoadOptions());

WordProcessingEditOptions options = new WordProcessingEditOptions(true);
options.setFontExtraction(FontExtractionOptions.ExtractAll);

EditableDocument editableDoc = editor1.edit(options);

// Manipulate the document as needed
editableDoc.dispose();
editor1.dispose();

如何在 Java 中產生 Excel 報告?

GroupDocs.Editor 允許您鎖定特定工作表、取代佔位符,並儲存結果,這對於 how to generate excel 的情境非常適合,因為您只需修改大型活頁簿中的單一分頁。它同時保留公式、圖表與儲存格格式,支援 .xlsx 與 .xls 檔案,讓您能無縫整合既有的報表管線。

Direct answer: 設定 SpreadsheetEditOptions.setWorksheetIndex(0)(或任意零基索引)以聚焦目標分頁,使用 new Editor().load("report.xlsx", new SpreadsheetLoadOptions()) 載入活頁簿,透過 EditableDocument API 取代佔位符,最後呼叫 save("report‑filled.xlsx", SaveFormat.Xlsx)。此方式可將記憶體消耗降低最高達 60 %。

SpreadsheetEditOptions 類別控制載入與編輯的工作表,讓您只處理單一分頁而不觸碰其餘內容。

載入與編輯試算表文件(第一工作表)

SpreadsheetEditOptions 控制 Excel 編輯設定,例如要載入哪個工作表。

Direct answer: 呼叫 options.setWorksheetIndex(0) 以編輯第一工作表,然後載入、修改儲存格並儲存。此方法避免載入其他分頁,提升大型活頁簿的處理速度。

import com.groupdocs.editor.Editor;
import com.groupdocs.editor.EditableDocument;
import com.groupdocs.editor.options.SpreadsheetLoadOptions;
import com.groupdocs.editor.options.SpreadsheetEditOptions;

String inputFilePath = "YOUR_DOCUMENT_DIRECTORY/sample.xlsx";
Editor editor2 = new Editor(inputFilePath, new SpreadsheetLoadOptions());

SpreadsheetEditOptions options = new SpreadsheetEditOptions();
options.setWorksheetIndex(0); // Access the first tab (index 0)

EditableDocument editableDoc = editor2.edit(options);

// Manipulate the document as needed
editableDoc.dispose();
editor2.dispose();

載入與編輯試算表文件(第二工作表)

Direct answer: 將工作表索引改為 1 以編輯第二分頁。相同的編輯‑儲存流程仍然適用,讓您能重複使用相同程式碼處理報表的不同區段。

import com.groupdocs.editor.Editor;
import com.groupdocs.editor.EditableDocument;
import com.groupdocs.editor.options.SpreadsheetLoadOptions;
import com.groupdocs.editor.options.SpreadsheetEditOptions;

String inputFilePath = "YOUR_DOCUMENT_DIRECTORY/sample.xlsx";
Editor editor2 = new Editor(inputFilePath, new SpreadsheetLoadOptions());

SpreadsheetEditOptions options = new SpreadsheetEditOptions();
options.setWorksheetIndex(1); // Access the second tab (index 1)

EditableDocument editableDoc = editor2.edit(options);

// Manipulate the document as needed
editableDoc.dispose();
editor2.dispose();

實務應用

  • 自動化報表產生 – 使用資料庫資料填寫 Excel 範本,generate excel report java 用於每月績效儀表板。
  • 範本客製化 – 依使用者輸入即時修改 Word 合約或發票,實現 customize word template java 功能。
  • 資料合併 – 合併多個試算表而不載入整本活頁簿,提升 performance optimisation Java。
  • CRM 整合 – 自動更新 CRM 系統中存放的客戶文件,確保跨平台資料一致。

效能考量

為了在處理大型文件時保持 Java 應用程式的回應速度,請遵循以下做法:

  1. 即時釋放物件 – 完成後立即呼叫 dispose() 於 EditableDocument 與 Editor。
  2. 重複使用載入選項 – 只建立一次 WordProcessingLoadOptions 或 SpreadsheetLoadOptions,並在多個編輯器間傳遞。
  3. 鎖定特定工作表 – 僅編輯需要的分頁可減少記憶體佔用(請參考上方 how to edit excel 範例)。
  4. 避免不必要的分頁 – 停用分頁 (setEnablePagination(false)) 可加速大型 Word 檔案的處理(disable pagination word)。

量化說明: 依照上述技術,GroupDocs.Editor 能在一般 8 核心伺服器上於 4 秒內處理 300 頁的 Word 文件,並於 6 秒內處理 200 工作表的 Excel 活頁簿。

常見問題與解決方案

問題解決方案
OutOfMemoryError on large files確保您 disable pagination word 並僅編輯所需的工作表。
Fonts not appearing after edit使用 FontExtractionOptions.ExtractAllEmbedded 以提取所有嵌入的字型。
License exception確認有效的 GroupDocs.Editor 授權檔案已放置於應用程式的 classpath 中。
Incorrect worksheet edited再次檢查傳遞給 setWorksheetIndex() 的索引;索引從 0 開始。

常見問答

Q: GroupDocs.Editor 是否相容所有 Word 格式?
A: 是的,支援 DOCX、DOCM、DOC、RTF、HTML 以及超過 30 種其他格式。

Q: 我可以在不將整本活頁簿載入記憶體的情況下編輯 Excel 檔案嗎?
A: 完全可以。透過設定 SpreadsheetEditOptions.setWorksheetIndex(),您只編輯選定的分頁,這正是 how to edit excel 任務的理想做法。

Q: 如何從 Word 文件中提取所有嵌入字型?
A: 如自訂選項範例所示,使用 WordProcessingEditOptions.setFontExtraction(FontExtractionOptions.ExtractAllEmbedded)。

Q: 處理大型文件時 Java 的最佳效能優化實踐是什麼?
A: 及時釋放 EditableDocument 與 Editor 物件、鎖定特定工作表、重複使用載入選項,並在不需要時 disable pagination word。

Q: 生產環境需要授權嗎?
A: 需要,完整的 GroupDocs.Editor 授權會解鎖所有功能、移除評估限制,並提供官方支援。


最後更新: 2026-09-26
測試環境: GroupDocs.Editor 25.3 for Java
作者: GroupDocs

相關教學