gpt4 book ai didi

java - Excel POI 3.5 WorkBook Java 堆空间异常?

转载 作者:搜寻专家 更新时间:2023-11-01 01:58:37 27 4
gpt4 key购买 nike

我正在使用最新的 POI 3.5 进行 Excel 阅读。我安装了 Excel MS office 2007,为此 poi 提供了 XSSF 来执行数据。

15000行数据正常执行,但超过限制到30000或100000或200000时,容易出现Java堆空间异常。

代码如下:

UATinput = new FileInputStream(UATFilePath);

uatBufferedInputStream = new BufferedInputStream(UATinput);

UATworkbook = new XSSFWorkbook(uatBufferedInputStream);

我在最后一行收到有关 Java 堆大小的异常。我已经使用 -Xms256m -Xmx1536m 增加了大小,但对于更多数据,它仍然给出 Java 堆空间异常。

谁能帮我解决 XSSFWorbook 的这个异常?

最佳答案

尝试使用 eventusermodel 而不是读取内存中的整个文件接口(interface)

这是一种非常节省内存的读取大文件的方法。它按照 SAX 解析器(与 DOM 相对)的原理工作,即在遇到特定数据结构时调用回调方法。它可能会有点棘手,因为它希望您了解基础数据的本质

Here你可以找到关于这个主题的很好的教程

希望这对您有所帮助!

关于java - Excel POI 3.5 WorkBook Java 堆空间异常?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2159635/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com