阅读大型Excel文件.xlsx

我正在使用库

org.apache.poi XSSFWorkbook workbook = new XSSFWorkbook(fileInputStream); 

我尝试着

 org.xml.sax 

库,但无法将其转换为工作簿

注意:最后结果我希望返回XSSFWorkbook

上面的代码将会出现内存不足,任何帮助将提前感谢ThankQ

如果input数据对于可用内存来说太大,则有两个选项。

a)通过-Xmx java命令行选项提供更多内存

b)使用POI的Streaming-API 。

如果文件最终适合内存,选项a)将很容易做到。 如果文件对于可用物理内存太大,则需要查看stream选项,特别是示例XLSX2CSV显示了如何从任意大的.xlsx文件读取数据,虽然有些function需要访问多个单元格不可用。