0
我使用的庫閱讀大量的Excel文件的.xlsx
org.apache.poi
XSSFWorkbook workbook = new XSSFWorkbook(fileInputStream);
我想
org.xml.sax
庫,但不能將其轉換成工作簿
注意:在最終結果我想XSSFWorkbook被退回
上面的代碼將失去內存,任何幫助將被讚賞 ThankQ提前
我使用的庫閱讀大量的Excel文件的.xlsx
org.apache.poi
XSSFWorkbook workbook = new XSSFWorkbook(fileInputStream);
我想
org.xml.sax
庫,但不能將其轉換成工作簿
注意:在最終結果我想XSSFWorkbook被退回
上面的代碼將失去內存,任何幫助將被讚賞 ThankQ提前
如果輸入數據對於可用內存太大,您有兩個選項。
一個)經由-Xmx java的命令行選項
b)中使用Streaming-API of POI提供更多的存儲器。
如果文件最終適合內存,選項a)將很容易做到。如果該文件對於可用物理內存來說太大,則需要查看流選項,尤其是示例XLSX2CSV顯示瞭如何從任意大的.xlsx文件讀取數據,雖然有些功能需要訪問多個單元格不可用。
「注意:最終結果我希望返回XSSFWorkbook」:這是不可能的。 XSSFWorkbook需要完全在內存中。嘗試使用SXSSFWorkbook https://poi.apache.org/spreadsheet/how-to.html#sxssf。 –
這個問題是關於閱讀而不是寫作的,這是SXSSFWorkbook的全部內容。 – centic