版本情况
JDK版本: openjdk_8_201
hutool版本: 5.5.6(请确保最新尝试是否还有问题)
问题描述(包括截图)
1:生成xlsx 文件后读取,读取出来行数是 0,实际是有 3行数据
2:文件打开再保存下,再次读取 可以读出 3行。
public static void main(String[] args) {
String fileUrl = "/data/test.xlsx";
File file = new File(fileUrl);
// 数据生成xls
List row1 = Arrays.asList("name", "card");
List> rows = new ArrayList<>();
rows.add(row1);
rows.add(Arrays.asList("11", "22"));
ExcelWriter writer= ExcelUtil.getBigWriter();
//合并单元格后的标题行,使用默认标题样式
writer.merge(1, "基本信息");
//一次性写出内容,强制输出标题
writer.write(rows);
SXSSFSheet sheet = (SXSSFSheet)writer.getSheet();
//上面需要强转SXSSFSheet 不然没有trackAllColumnsForAutoSizing方法
sheet.trackAllColumnsForAutoSizing();
writer.autoSizeColumnAll();
writer.flush(file);
//关闭writer,释放内存
writer.close();
// File file = new File(fileUrl);
List> read = new ArrayList<>();
ExcelUtil.readBySax(file, 0,
(sheetIndex, rowIndex, rowList) -> read.add(rowList));
System.out.println("数据总行数:" + read.size());
}