如何使用 Java Excel 解析庫與 GroupDocs.Parser

在現代以數據為驅動的應用程式中,如何有效解析 Excel 檔案可能會成為工作流程的關鍵。無論您是遷移舊有資料、產生自動化報告,或是將原始文字輸入分析管線,從每個工作表提取未格式化的文字都是常見需求。本教學將示範如何使用 java excel parsing library——GroupDocs.Parser for Java——開啟 Excel 活頁簿、遍歷其工作表,並僅用幾行程式碼取得原始內容。

快速回答

  • 什麼庫負責在 Java 中解析 Excel? GroupDocs.Parser for Java.
  • 我可以從每個工作表提取原始文字嗎? Yes, using TextReader with 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 foundexcelFilePath 錯誤。核對路徑並確保檔案可讀取。
Unsupported format使用較舊的 XLS 檔案於較新的解析器版本。將檔案轉換為 XLSX,或升級至最新的 GroupDocs.Parser 版本。
Out‑of‑memory errors on large workbooks一次載入所有工作表。如示範般一次處理一個工作表,並及時釋放資源。
License exception試用期已過或缺少授權檔案。在解析前套用有效的臨時或正式授權。

實際應用(讀取 Excel 工作表文字)

  1. Data migration: 將舊有試算表資料遷移至現代資料庫,免除手動複製貼上。
  2. Automated reporting: 從多個活頁簿提取原始值,以產生彙總的 PDF 或 HTML 報告。
  3. Search indexing: 將提取的文字索引至 Elasticsearch,以快速發現內容。

大型 Excel 檔案的效能提示

  • Stream per sheet: 迴圈已一次處理一個工作表,保持低記憶體使用。
  • Reuse TextReader objects: 避免在緊密迴圈中建立不必要的物件。
  • 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 倉庫以取得更多範例。

資源


最後更新: 2026-09-27
測試環境: GroupDocs.Parser 25.5 for Java
作者: GroupDocs

相關教學