Open hujun-e opened 1 month ago
快速开始 、常见问题
批量导出,后续循环出现异常时,导致临时文件没有删除
// 方法1: 如果写到同一个sheet String fileName = "D:\\test\\excel\\" + "repeatedWrite" + System.currentTimeMillis() + ".xlsx"; // 这里 需要指定写用哪个class去写 try (ExcelWriter excelWriter = EasyExcel.write(fileName, DemoData.class).build()) { // 这里注意 如果同一个sheet只要创建一次 WriteSheet writeSheet = EasyExcel.writerSheet("模板").build(); // 去调用写入,这里我调用了五次,实际使用时根据数据库分页的总的页数来 for (int i = 0; i < 2; i++) { // 分页去数据库查询数据 这里可以去数据库查询每一页的数据 List<DemoData> data = Collections.singletonList(new DemoData("test")); if (i == 1) { // 第二批数据的时候模拟异常 data = new ArrayList<>(data) { @Override public Iterator<DemoData> iterator() { throw new RuntimeException("模拟抛出异常"); } }; } excelWriter.write(data, writeSheet); } }
先调用了close,导致调用dispose失败, 执行完成后,临时文件没有删除
建议先去看文档
快速开始 、常见问题
触发场景描述
批量导出,后续循环出现异常时,导致临时文件没有删除
触发Bug的代码
提示的异常或者没有达到的效果
先调用了close,导致调用dispose失败, 执行完成后,临时文件没有删除