什么我的应用需求是这是在Java中读取大型excel文件的最佳API吗?
1)阅读以.xls或.xlsx格式
2大型Excel文件),数据库与前一列插入每列作为行作为下一
父意思是如果我有5列和30,000行,那么我想插入1列作为父母,
第二列是第一列的孩子,第三列是第二等孩子......树结构
现在任何人都可以建议我最好的API来做到这一点在Java语言。
一些谷歌搜索后,我发现有很多API的现在,但是这是最好的是
参考see
什么我的应用需求是这是在Java中读取大型excel文件的最佳API吗?
1)阅读以.xls或.xlsx格式
2大型Excel文件),数据库与前一列插入每列作为行作为下一
父意思是如果我有5列和30,000行,那么我想插入1列作为父母,
第二列是第一列的孩子,第三列是第二等孩子......树结构
现在任何人都可以建议我最好的API来做到这一点在Java语言。
一些谷歌搜索后,我发现有很多API的现在,但是这是最好的是
参考see
尝试POI - 它将读取文件(XLS,XLSX),但数据库操作也需要其他库和基本JDBC。
虽然POI可以读取XLS和XLSX文件,但在后一种情况下它是一个内存管理器。 SXSSFWorkBook将**整个** XSLX文件加载到内存中。一个38MB的XLSX文件需要远远超过-Xmx2048x! [Redonculous](http://www.urbandictionary.com/define.php?term=redonculous)! – Piko 2012-02-10 19:59:31
而且你无法导出到.csv文件?
这可能是一个更快的解决方案,然后解析整个.xls/.xlsx文件。另一点是你比只需要处理一种文件类型/格式。
我不认为JExcel正确处理.xlsx。不确定POI。我同意你的观点 - 导出.csv听起来更好。 – duffymo 2010-11-03 09:38:00
如果重点是某些自动化,那么一些非技术业务人员只是想在类似的Web界面的上传框中转储一个excel文件,就不那么方便了。导出为CSV是一个手动步骤,或者需要一些VBA的东西 - 如果运行它的系统不是Windows系统,也不可用。 – 2010-11-03 09:44:58
我有**完全相同的问题。到目前为止,没有解决方案。 POI希望将整个XLSX加载到内存中。如果您只是使用XLS文件,POT-3.8b5将会在几秒钟内加载和处理文件!我有一个209MB的XLS文件,我的应用程序处理了整个事情(8个标签中有500,000行),并在大约2分钟内插入到MySQL中。 – Piko 2012-02-10 20:03:01