如何在 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 應用程式的回應速度,請遵循以下做法:
- 即時釋放物件 – 完成後立即呼叫
dispose()於EditableDocument與Editor。 - 重複使用載入選項 – 只建立一次
WordProcessingLoadOptions或SpreadsheetLoadOptions,並在多個編輯器間傳遞。 - 鎖定特定工作表 – 僅編輯需要的分頁可減少記憶體佔用(請參考上方 how to edit excel 範例)。
- 避免不必要的分頁 – 停用分頁 (
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