有没有人找到一个可以很好地处理大型电子表格的库?
我已经尝试过 apache 的 POI,但它在处理大文件时惨遭失败——无论是读取还是写入。它使用大量内存,因此您需要一台超级计算机来解析或创建 20+mb 的电子表格。
肯定有一种更有效的内存方式并且有人写过吗?!
有没有人找到一个可以很好地处理大型电子表格的库?
我已经尝试过 apache 的 POI,但它在处理大文件时惨遭失败——无论是读取还是写入。它使用大量内存,因此您需要一台超级计算机来解析或创建 20+mb 的电子表格。
肯定有一种更有效的内存方式并且有人写过吗?!
@pstanton .. 我正在研究一个类似的解决方案,并且能够编写具有数百行从数据库导出的大型 excel 2007 文件。这是它的链接:http: //vikramvkamath.blogspot.com/2010/07/writing-large-excel-files-excel-2007.html
我的解决方案是 Yegor Koslov 的 SheetWriter 类的扩展,遵循这个http 链接,它对我来说效果很好。如果您遇到任何问题,请告诉我。
~维克拉姆
我真的不能向你推荐图书馆。但是,当您需要最佳性能时,可能值得一试最初提出 Excel 的人。我猜想.NET 提供的 API 在处理 Excel 文件方面效率更高。因此,我们的想法是在 .NET 中实现一个 Web 服务或类似组件,为您完成大部分与 Excel 相关的 grunt 工作,然后从 Java 中调用它。
这与Jannik 的想法基本相同,但您使用Java COM Bridge直接从 Java 访问 Excel API。我们在 Word 中取得了很好的成功。明显的缺点是它只适用于 Windows。
您是否尝试过JExcelAPI作为 POI 的替代品?我承认我无法评论它的内存效率。
在发帖时,没有用于读写大型 Excel 文件的纯 Java 可扩展解决方案。
可能是 CSV 文件格式可以帮助您。您只需要用逗号分隔每个值并使用 .csv 扩展名保存文件。