Question

We are using java and ODF Toolkit for reading rows from ods and excel files.

The problem is that , even if you want to read only 1 row ,the whole document is loaded and the memory usage for a 50.000 rows of ods file is around 350 MBs .

So im searching for a way to read rows by paging . Any chance

Edit1 : Please dont sugges POI , works just like ODF Toolkit.

Edit2 : I accepted an answer but it only works with Excel files , and there's no answer for ODS files.

Was it helpful?

Solution 2

An alternative approach may be to load rows using JDBC.

There are various JDBC Excel drivers around including this:

https://code.google.com/p/sqlsheet/

See also:

Connecting to excel sheet using jdbc without specifying DSN to Excel sheet

OTHER TIPS

Converting .ods to .xls /.xlsx and using the more established poi api might be helpful.It allows to read specific rows/cells and you can use the same to prevent overshooting your memory limits.

Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top