0

这对我来说是一项非常具有挑战性的任务,因为我在将 XLSX 转换为 CSV 期间进行了大量的研发工作以消除 OutOfMemroyError,并且我的 excel 文件可以有三张纸,每张纸有 60000 行。我最近使用了 XSSF 和 SAX(事件 API),因为这种方法消耗的内存非常少。但是,事件 API 仅针对文件中实际存储的内容触发事件,这可能是我的原因。

在此事件 API 方法之前,我使用 Workbook 类来处理 XLSX 文件,最终在下面提供的此工作簿创建期间内存不足。

工作簿工作簿 = WorkbookFactory.create(new File("myfile.xlsx"));

那么,使用 apache POI 处理大量 XLSX 数据的最佳方法是什么?

4

1 回答 1

1

这是一个使用 sax 解析器读取大型 xls 文件的示例。Sax 解析器将帮助您避免 OOM 异常。

通过 Apache POI 读取大型 Excel 文件 (xlsx) 时出错

于 2012-11-08T12:13:21.753 回答