iloveyGar 2021-12-29 19:53 采纳率: 50%
浏览 83

Java poi创建一列 当创建第二列的时候前一列会被删除

问题遇到的现象和发生背景

循环的输出每一列 当第二列写入 前一列会删除,如果我写入两列,第一列和第三列 当写入第三列的时候 第一列就没了 map里面的integer是列

问题相关代码,请勿粘贴截图
 Workbook workbook = writeWorkbookHolder.getWorkbook();
            String sheetName = "hidderSheet";
            Sheet proviceSheet = workbook.createSheet(sheetName);
            Name name = workbook.createName();
            name.setNameName(sheetName);
            for (Map.Entry<Integer, String[]> entry : integerMap.entrySet()) {
                String[] strings = entry.getValue();
//                int hiddenSheet = workbook.getSheetIndex("hidderSheet");
//                workbook.setSheetHidden(hiddenSheet, true);
                for (int i = 0; i < strings.length; i++) {
                    proviceSheet.createRow(i).createCell(entry.getKey()).setCellValue(strings[i]);
                }

运行结果及报错内容
我的解答思路和尝试过的方法
我想要达到的结果

怎么才能完整的输出两列呢

  • 写回答

3条回答 默认 最新

  • 敏姐儿 2021-12-29 20:51
    关注

    1.使用poi的时候要注意每一个单元格都是一个对象,不可以直接复用(包括样式)
    2.将第二层for循环内容改为一一创建试试

    评论

报告相同问题?

问题事件

  • 修改了问题 12月29日
  • 创建了问题 12月29日