是否可以在流SXSSFWorkbook上使用autoSizeColumns?
我实现了导出功能,以将对象列表导出为ex​​cel。最初,我使用XSSFWorkbook(不是流式),并且在创建所有单元格之后,我自动调整了所有列的大小,从而生成了一个不错的excel文件。

对于性能问题,我们希望将工作簿更改为流版本,但这导致在org.apache.poi.ss.util.SheetUtil.getCellWidth处出现NullPointer。

是否可以为SXSSFWorkbook调用autoSizeColumns?

我使用的是poi-ooxml 3.9,但在3.8中却存在相同的问题。

最佳答案

您需要确保每个单元格都有一个值。

我们使用以下代码将字符串值设置为单元格:

Cell c = row.createCell(i);
c.setCellValue(text == null ? "" : text );

**单元格永远不能为null值,否则它将引发NullPointerException。因此,如上所示设置值。

非常感谢,这有帮助!!

09-25 21:29