如何使用 Java Excel 解析庫與 GroupDocs.Parser
在現代以數據為驅動的應用程式中,如何有效解析 Excel 檔案可能會成為工作流程的關鍵。無論您是遷移舊有資料、產生自動化報告,或是將原始文字輸入分析管線,從每個工作表提取未格式化的文字都是常見需求。本教學將示範如何使用 java excel parsing library——GroupDocs.Parser for Java——開啟 Excel 活頁簿、遍歷其工作表,並僅用幾行程式碼取得原始內容。
快速回答
- 什麼庫負責在 Java 中解析 Excel? GroupDocs.Parser for Java.
- 我可以從每個工作表提取原始文字嗎? Yes, using
TextReaderwith raw mode enabled. - 我需要授權嗎? A temporary free license is available for evaluation.
- 需要哪個 Java 版本? JDK 8 or higher.
- 支援 Maven 嗎? Absolutely – add the repository and dependency to
pom.xml.
什麼是 java excel parsing library?
GroupDocs.Parser for Java 是一個 java excel parsing library,可程式化開啟 .xlsx、.xls 或 CSV 活頁簿,並在不將整個試算表載入記憶體的情況下讀取純文字。此方法比傳統試算表 API 更快,且讓您直接存取底層字元。
為什麼使用 GroupDocs.Parser for Java?
GroupDocs.Parser 會一次處理一個工作表,即使是 500 頁的活頁簿,記憶體使用量也保持在 10 MB 以下。它支援超過 10 種輸入與輸出格式——包括 XLSX、XLS、CSV 與 ODS——因此單一 API 即可處理多種試算表類型。簡潔、流暢的方法讓您在數分鐘內開始提取文字,且授權模式可從試用版無縫擴展至正式版,無需更改程式碼。
前置條件
- Java Development Kit (JDK): 8 或更新版本。
- IDE: IntelliJ IDEA、Eclipse,或任何相容 Java 的編輯器。
- Maven (optional): 方便的相依管理。
設定 GroupDocs.Parser for Java
Maven 設定
如果您使用 Maven 管理相依性,請將儲存庫與相依性加入您的 pom.xml:
<repositories>
<repository>
<id>repository.groupdocs.com</id>
<name>GroupDocs Repository</name>
<url>https://releases.groupdocs.com/parser/java/</url>
</repository>
</repositories>
<dependencies>
<dependency>
<groupId>com.groupdocs</groupId>
<artifactId>groupdocs-parser</artifactId>
<version>25.5</version>
</dependency>
</dependencies>
直接下載
或者,直接從 GroupDocs releases 下載最新版本的 GroupDocs.Parser for Java。
取得授權
若要以免費試用開始,請前往 GroupDocs website 取得臨時授權。這讓您在購買正式授權前,先評估此函式庫的完整功能。
基本初始化與設定
GroupDocs.Parser 是代表文件解析器的核心類別。將函式庫加入 classpath 後,您即可建立指向 Excel 活頁簿的 Parser 實例:
import com.groupdocs.parser.Parser;
import com.groupdocs.parser.data.TextReader;
import com.groupdocs.parser.options.IDocumentInfo;
import com.groupdocs.parser.options.TextOptions;
String excelFilePath = "YOUR_DOCUMENT_DIRECTORY/sample.xlsx";
try (Parser parser = new Parser(excelFilePath)) {
// Your code to work with the document
} catch (Exception e) {
e.printStackTrace();
}
環境就緒後,讓我們深入實際的提取邏輯。
如何解析 Excel:從工作表提取原始文字
載入活頁簿並以兩個簡單步驟取得原始文字。首先,取得工作表名稱與尺寸等基本文件資訊。接著,使用配置 TextOptions(true) 的 TextReader 逐一遍歷工作表,啟用原始模式,返回不含任何格式標籤的純字元。
TextReader 從文件讀取文字,可選擇原始模式。
IDocumentInfo spreadsheetInfo = parser.getDocumentInfo();
接著,遍歷每個工作表並提取未格式化的文字。TextOptions(true) 旗標啟用原始模式,返回不含任何樣式標籤的純字元。
TextOptions 設定文字提取行為,透過布林旗標啟用原始模式。
for (int p = 0; p < spreadsheetInfo.getRawPageCount(); p++) {
try (TextReader reader = parser.getText(p, new TextOptions(true))) {
String sheetContent = reader.readToEnd();
// Process or use extracted text data here
}
}
處理提取的資料
此時 sheetContent 包含當前工作表的純文字。您可以:
- 將其寫入
.txt檔案以作存檔。 - 輸入自然語言處理管線。
- 存入資料庫以供日後查詢。
常見問題與解決方案
| 問題 | 為何發生 | 解決方式 |
|---|---|---|
| File not found | excelFilePath 錯誤。 | 核對路徑並確保檔案可讀取。 |
| Unsupported format | 使用較舊的 XLS 檔案於較新的解析器版本。 | 將檔案轉換為 XLSX,或升級至最新的 GroupDocs.Parser 版本。 |
| Out‑of‑memory errors on large workbooks | 一次載入所有工作表。 | 如示範般一次處理一個工作表,並及時釋放資源。 |
| License exception | 試用期已過或缺少授權檔案。 | 在解析前套用有效的臨時或正式授權。 |
實際應用(讀取 Excel 工作表文字)
- Data migration: 將舊有試算表資料遷移至現代資料庫,免除手動複製貼上。
- Automated reporting: 從多個活頁簿提取原始值,以產生彙總的 PDF 或 HTML 報告。
- Search indexing: 將提取的文字索引至 Elasticsearch,以快速發現內容。
大型 Excel 檔案的效能提示
- Stream per sheet: 迴圈已一次處理一個工作表,保持低記憶體使用。
- Reuse
TextReaderobjects: 避免在緊密迴圈中建立不必要的物件。 - Parallel processing: 對於極大型活頁簿,可考慮在不同執行緒中處理工作表,但需注意
Parser實例的執行緒安全性。
常見問答
Q: GroupDocs.Parser 支援哪些其他試算表格式?
A: 它支援 XLSX、XLS、CSV、ODS 以及其他 Office Open XML 格式——總計超過 10 種格式。
Q: 我也能提取儲存格的格式資訊嗎?
A: 可以,使用未啟用 raw 旗標的 TextOptions,即可取得保留基本樣式的格式化文字。
Q: 如何處理受密碼保護的 Excel 檔案?
A: 在 Parser 建構子中傳入密碼,例如 new Parser(filePath, "password")。
Q: 有辦法只提取特定欄位嗎?
A: 您可以在 sheetContent 後處理以過濾行,或使用 SpreadsheetOptions API 進行更細緻的控制。
Q: 我在哪裡可以找到更多程式碼範例?
A: 請參閱 GroupDocs documentation 與 GitHub 倉庫以取得更多範例。
資源
- 文件概覽: GroupDocs 文件說明
- 文件說明: GroupDocs Parser Java 文件說明
- API 參考: API 參考
- 下載: 最新發佈版本
- GitHub 倉庫: GitHub 上的 GroupDocs.Parser
- 免費支援論壇: GroupDocs Parser 論壇
- 臨時授權: 取得臨時授權
最後更新: 2026-09-27
測試環境: GroupDocs.Parser 25.5 for Java
作者: GroupDocs