Java操做office文件的選擇

筆者在這裏所述的信息均是從網上搜索聚合而來,有些是親身作過驗證的,有些不符合筆者需求,因此也沒有浪費太多時間去作無用功,有須要的朋友能夠自行深刻探索。 java

office辦公軟件的強大及普遍應用,筆者在這裏就再也不復述了。那麼操做office辦公文件的需求天然也不會少,.net仗着MS的關係,一套標準API想怎麼來就怎麼來。但是換了java,如何來應對呢? 編程

  • Apache POI

特色:開源免費,Apache產出物,文檔全面。功能豐富,分別有針對Word、Excel和PPT的操做API,支持03和07不一樣格式的文件。 操作系統

侷限性:03和07不一樣格式的office文件,有着兩套不一樣的API,雖然用法相似,但畢竟類名、接口名都有所變更,使用着實有些棘手。 .net

  • Jacob

特色:開源免費,經過JNI功能訪問Windows平臺下的com組件或者win32系統庫來實現操控office文件的目的。API的使用相似VBA編程的風格,因此對於熟悉VBA的朋友是個福音(至少我看着沒有POI的API舒服)。 接口

侷限性:安裝Jacob時,須要一個dll文件,因此使用Jacob脫離不了Windows平臺,Linux不適用。(不巧筆者的環境是Linux,因此沒對Jacob研究下去) 文檔

  • Aspose

特色:功能強大,支持多種格式的文件和功能,支持許多POI沒能完成的功能(真的很強大!)。舉例清晰,不管是03仍是07格式的文件,API接口統一。更列出了與POI的對比,充分表現了自身的完美。 軟件

侷限性:收費!收費!收費!即使每一年的$你老闆能夠接受,但多少主觀感受上有些受制於人。 搜索

  • OpenOffice

特色:一套跨平臺的辦公室軟件套件,可以在Windows、Linux、MaxOS和Solaris等操做系統上執行,功能堪比office辦公套件,兼容各個主要的辦公室軟件套件。 總結

侷限性:須要安裝OpenOffice的軟件環境。重要的是,從上述的言詞能夠看出OpenOffice自己是一款軟件,它的存在主要是爲了替代MS的office,不是爲了提供操控office文件的API。由於筆者沒有選用OpenOffice方案,因此筆者推測因爲OpenOffice爲了兼容其餘的辦公軟件套件,纔會存在一部分API能夠操做office文件。但這不是OpenOffice存在的主要價值。 跨平臺

從調研的過程當中發現,使用POI並進行總結的用戶居多。看過這篇文章的朋友能夠根據本身的實際狀況作出選擇。

相關文章
相關標籤/搜索