java中使用poi操作excel时,不明白这个为什么无法写入

在使用poi包进行操作excel的时候,出现在两次for循环中,无法正确写入excel现象

        XSSFWorkbook wb = new XSSFWorkbook();
        Sheet sheet = wb.createSheet("result");
        for (int i = 0;i< 79;i++){
            for(int j= 1;j<4;j++){
                sheet.createRow(i).createCell(0).setCellValue("当前i:"+i);
                sheet.createRow(i).createCell(j).setCellValue("当前j:"+j);
            }
        }

        FileOutputStream fos = null;
        try {  
            fos = new FileOutputStream(McUtils.compareResult_str + "C666.xlsx");  
            wb.write(fos);        
        } catch (IOException e) {  
            System.out.println(e.toString());  
        } finally {  
            try {  
                fos.close();  
            } catch (IOException e) {  
                System.out.println(e.toString());  
            }  
        }  

生成后的文档

1、是不能用两次for循环,还是其他原因?
2、for循环中有两句setValue,但是只有后一句生效了,并且后一句只写入了最后一列(即只有j=3的时候生效了),这是什么原因

2个回答

sheet.createRow(i).createCell(0).setCellValue("当前i:"+i);每次外循环执行了三次这条语句
导致每一行创建了三次第一个单元格(就是表格的A列被创建了三次)

    for (int i = 0;i< 79;i++){
                sheet.createRow(i).createCell(0).setCellValue("当前i:"+i);
        for(int j= 1;j<4;j++){
            sheet.createRow(i).createCell(j).setCellValue("当前j:"+j);
        }
    }

这样就可以了吧

Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
立即提问