[alibaba/easyexcel]操作excel后打开excel提示部分内容有问题请修复

2024-05-11 275 views
3

源excel: image

从源文件打开workbook再修改sheet对应列的值后,生成的excel打开如下 row.getCell(9).setCellType(CellType.STRING); row.getCell(9).setCellValue("989"); image

若先打开源excel并且ctrl+s保存,再执行生成新excel则没问题,有大伙遇到这个问题吗

回答

8

贴全代码我看代码直接用的是poi

9
    Workbook wb = ExcelUtils.getTheWorkbook("d://abc/56897.xlsx");
    Sheet sheet = wb.getSheetAt(0);
    Row row = null;
    for (int i = 1; i <= sheet.getLastRowNum(); i++) {
        row = sheet.getRow(i);
        if (row != null) {
            System.out.println(ExcelUtils.pareCellValue(row.getCell(7)));
            row.getCell(9).setCellType(CellType.STRING);
            row.getCell(9).setCellValue("XXX");
            System.out.println("9:  " + ExcelUtils.pareCellValue(row.getCell(9)));
        }
    }
    String outputPath = "d://abc/new123456.xlsx";
    try (OutputStream os = new FileOutputStream(new File(outputPath))) {
        wb.write(os);
    } catch (IOException e) {
        System.out.println(e);
    }
2

是直接操作poi的,easyExcel也是基于这个的,求助下大神们有没有遇到同样的情况,现在是源excel好像有点问题,查看信息能看到 ====尚未保存===,所以以此生成的新excel会提示部分内容有问题。

而且源excel先点击保存后再操作就没问题,而且源excel大小是7K,什么都不做点保存后大小变为12K,里面应该涉及一些底层的操作,比如缓存???

5

这个需要自己研究下