我需要自动适应大(30k +行)xlsx文件中的所有行.
以下代码通过apache poi适用于小文件,但适用于大文件OutOfMemoryError
:
Workbook workbook = WorkbookFactory.create(inputStream);
Sheet sheet = workbook.getSheetAt(0);
for (Row row : sheet) {
row.setHeight((short) -1);
}
workbook.write(outputStream);
Run Code Online (Sandbox Code Playgroud)
更新:不幸的是,增加堆大小不是一个选项 - OutOfMemoryError
出现在-Xmx1024m
和30k行不是一个上限.