我需要使用Java读取大型Excel工作表。 Excel工作表可能是.xls或.xlsx。该表可能有数千行。我必须读取所有行并在数据库中插入该行。
所以基本上从Excel读取并写入数据库。
我正在考虑的API是POI和JExcel API(在谷歌上搜索和阅读其他一些相关文章后)。
但我仍然不确定阅读非常大的Excel工作表的最合适方式是什么。
我不希望以后出现任何内存问题。
修改1:
另外,从我到目前为止搜索到的内容来看,JExcel似乎不支持.xlsx格式。
请建议。
答案 0 :(得分:3)
我们正在使用Apache POI读取那个大小的Excel文件而没有任何问题。
答案 1 :(得分:3)
如果您只想阅读文件,那么Apache POI的性能应该没问题,因为有用于读取的流API(想想SAX与DOM)。 见http://poi.apache.org/spreadsheet/index.html
使用POI编写Excel文件将是另一种情况。但至少在.xlsx
个文件中有一个beta扩展,允许使用Apache POI(SXSSF)进行更高效的写操作。
答案 2 :(得分:0)