Java 讀取 OpenOffice 文檔
由于項目的需要,我們需要在Java程序讀取OpenOffice文檔,并對數據進行處理。本文介紹了如何使用ODF Toolkit去讀取OpenOffice SpreadSheet的內容。
1. OpenOffice Spreedsheet 文檔
假設我們需要讀取如下圖所示的OpenOffice Spreedsheet 文檔:

上面的文檔也包含在本文的源代碼中。
OpenOffice文檔其實是以XML格式存儲的,其中包含了文檔內容和格式控制等。
如果使用unzip工具解壓縮,你會發現解壓縮后,一個OpenOffice文檔其實包含如下的內容:

2. 下載ODF4j
Odf4j 是用于讀取OpenOffice 文檔(ODF)的純Java的工具包。目前雖然還沒有正式發布,但是已經具備了處理OpenOffice文檔的基本功能。
使用Odf4j,Java程序員可以非常容易地創建,修改OpenOffice 文檔。
3. 使用ODF4j讀取OpenOffice文檔
使用ODF4j讀取OpenOffice文檔包括兩個層次:Package Layer和Document Layer。
4. 讀取OpenOffice Spreadsheet文檔
Source code
當獲得root Element后,我們就可以像讀取xml文件一樣讀取OpenOffice文檔中的內容。
5. 程序運行結果
下載本文的源代碼,進入NetBean Project的根目錄,然后運行:ant run。運行結果如下圖所示:

===相關下載===
1. ODF4j: http://wiki.services.openoffice.org/wiki/Odf4j
1. OpenOffice Spreedsheet 文檔
假設我們需要讀取如下圖所示的OpenOffice Spreedsheet 文檔:

上面的文檔也包含在本文的源代碼中。
OpenOffice文檔其實是以XML格式存儲的,其中包含了文檔內容和格式控制等。
如果使用unzip工具解壓縮,你會發現解壓縮后,一個OpenOffice文檔其實包含如下的內容:

2. 下載ODF4j
Odf4j 是用于讀取OpenOffice 文檔(ODF)的純Java的工具包。目前雖然還沒有正式發布,但是已經具備了處理OpenOffice文檔的基本功能。
使用Odf4j,Java程序員可以非常容易地創建,修改OpenOffice 文檔。
3. 使用ODF4j讀取OpenOffice文檔
使用ODF4j讀取OpenOffice文檔包括兩個層次:Package Layer和Document Layer。
- Package Layer
- Document Layer
4. 讀取OpenOffice Spreadsheet文檔
import org.openoffice.odf.OdfPackage; import org.openoffice.odf.OpenDocumentFactory; import org.openoffice.odf.spreadsheet.SpreadsheetDocument; import org.w3c.dom.Document; import org.w3c.dom.Element; import org.w3c.dom.NodeList; ...... OdfPackage odfPackage; odfPackage = (SpreadsheetDocument) OpenDocumentFactory.load(path); Document doc = odfPackage.getDocument(OdfPackage.STREAMNAME_CONTENT); Element root = doc.getDocumentElement(); ...... |
當獲得root Element后,我們就可以像讀取xml文件一樣讀取OpenOffice文檔中的內容。
5. 程序運行結果
下載本文的源代碼,進入NetBean Project的根目錄,然后運行:ant run。運行結果如下圖所示:

===相關下載===
1. ODF4j: http://wiki.services.openoffice.org/wiki/Odf4j