SXSSFWorkbook内存行数限制导致后续行操作失败
问题
Attempting to write a row[1] in the range [0,167] that is already written to disk
sheet页行数超过100时会写入临时文件,后续再对这些行进行操作时,比如设置超链接,就会报错,因为SXSSFWorkbook只能修改内存中的行,不能修改临时文件中的行
BigExcelWriter
如果使用的是hutool工具类,可以先指定rowAccessWindowSize的大小,
bigExcelWriter = new BigExcelWriter(500,tempFileName);
SXSSFWorkbook
public static SXSSFWorkbook createSXSSFBook(int rowAccessWindowSize) {
return new SXSSFWorkbook(rowAccessWindowSize);
}