什麼我的應用需求是這是在Java中讀取大型excel文件的最佳API嗎?
1)閱讀以.xls或.xlsx格式
2大型Excel文件),數據庫與前一列插入每列作爲行作爲下一
父意思是如果我有5列和30,000行,那麼我想插入1列作爲父母,
第二列是第一列的孩子,第三列是第二等孩子......樹結構
現在任何人都可以建議我最好的API來做到這一點在Java語言。
一些谷歌搜索後,我發現有很多API的現在,但是這是最好的是
參考see
什麼我的應用需求是這是在Java中讀取大型excel文件的最佳API嗎?
1)閱讀以.xls或.xlsx格式
2大型Excel文件),數據庫與前一列插入每列作爲行作爲下一
父意思是如果我有5列和30,000行,那麼我想插入1列作爲父母,
第二列是第一列的孩子,第三列是第二等孩子......樹結構
現在任何人都可以建議我最好的API來做到這一點在Java語言。
一些谷歌搜索後,我發現有很多API的現在,但是這是最好的是
參考see
嘗試POI - 它將讀取文件(XLS,XLSX),但數據庫操作也需要其他庫和基本JDBC。
雖然POI可以讀取XLS和XLSX文件,但在後一種情況下它是一個內存管理器。 SXSSFWorkBook將**整個** XSLX文件加載到內存中。一個38MB的XLSX文件需要遠遠超過-Xmx2048x! [Redonculous](http://www.urbandictionary.com/define.php?term=redonculous)! – Piko 2012-02-10 19:59:31
而且你無法導出到.csv文件?
這可能是一個更快的解決方案,然後解析整個.xls/.xlsx文件。另一點是你比只需要處理一種文件類型/格式。
我不認爲JExcel正確處理.xlsx。不確定POI。我同意你的觀點 - 導出.csv聽起來更好。 – duffymo 2010-11-03 09:38:00
如果重點是某些自動化,那麼一些非技術業務人員只是想在類似的Web界面的上傳框中轉儲一個excel文件,就不那麼方便了。導出爲CSV是一個手動步驟,或者需要一些VBA的東西 - 如果運行它的系統不是Windows系統,也不可用。 – 2010-11-03 09:44:58
我有**完全相同的問題。到目前爲止,沒有解決方案。 POI希望將整個XLSX加載到內存中。如果您只是使用XLS文件,POT-3.8b5將會在幾秒鐘內加載和處理文件!我有一個209MB的XLS文件,我的應用程序處理了整個事情(8個標籤中有500,000行),並在大約2分鐘內插入到MySQL中。 – Piko 2012-02-10 20:03:01