Read large Excel file .xlsx

2019-03-04 23:14发布

问题:

i'm using library

org.apache.poi 


XSSFWorkbook workbook = new XSSFWorkbook(fileInputStream);

I'm trying

org.xml.sax

library, but cannot able convert it into workbook

NOTE : at end result i want XSSFWorkbook to be returned

the above code will go out of memory, any help will be appreciated ThankQ in advance

回答1:

If the input data is too large for the available memory, you have two options.

a) Provide more memory via the -Xmx java command line option

b) Use the Streaming-API of POI.

Option a) will be easy to do if the files eventually fit in memory. If the file is too large for the available physical memory, you will need to take a look at the streaming options, especially the sample XLSX2CSV shows how you can read data from arbitrarily large .xlsx files, albeit with some features that need to access multiple cells not available out of the box.