使用 APACHE POI 在同一行的不同列中打印值

尼尔·桑查拉

GradeList 是字符串的 ArrayList,其值为“80”、“81”...“85”

     for(int y = 0; y < gradeList.size(); y++){
        HSSFRow row1 = worksheet.createRow((short) 1);//1
        HSSFCell cell1 =row1.createCell((short) y+1);//2
        cell1.setCellValue("" + gradeList.get(y));//3
        HSSFCellStyle cellStylei = workbook.createCellStyle();//4
        cellStylei.setFillForegroundColor(HSSFColor.GREEN.index);
        cell1.setCellStyle(cellStylei);//6
     }

代码输出:_、_、_、_、_、85。预期输出:80、81、82、83、84、85。

更改代码后

    HSSFRow row1 = worksheet.createRow((short) 1);//1
    HSSFCell cell1;
    for(int y = 0; y < gradeList.size(); y++){

        cell1 = row1.createCell((short) y+1);//2
        cell1.setCellValue("" + gradeList.get(y));//3

    }
    HSSFCellStyle cellStylei = workbook.createCellStyle();//4
    cellStylei.setFillForegroundColor(HSSFColor.GREEN.index);//5

该代码按预期打印 80、81、82、83、84 和 85,但使用前六行代码只打印 85。有人可以向我解释为什么第一个错误或不起作用,如果可能的话,你也可以还请解释第 4,5 和 6 行的作用。

视频

问题是,在您的第一个代码第 1 行中,您为每个gradeList元素创建了相同的行,因此您会覆盖为元素 80 创建的行,以及用元素 81 创建的行,等等,因为您只有最后一个。

如果您修改第一个代码并为每个gradeList元素创建不同的行,您可以看到添加了所有值,例如:

HSSFRow row1 = sheet.createRow((short) y +1);//1

在第 4 行中,您正在创建要应用于单元格的样式:

HSSFCellStyle cellStylei = workbook.createCellStyle();//4

在第 5 行中,您将前景色填充颜色添加为绿色

cellStylei.setFillForegroundColor(HSSFColor.GREEN.index);//5

在第 6 行,您将样式添加到您的单元格

cell1.setCellStyle(cellStylei);//6

您可以官方 poi 文档中链接和一些示例中找到有关不同样式的更多信息

希望这可以帮到你。

谢谢

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类常见问题

使用Apache POI在Excel中合并单元格

来自分类Dev

如何使用Apache POI设置漂亮的float值?

来自分类Dev

使用Apache POI在Excel行中向前折叠

来自分类Dev

如何使用Apache POI删除行

来自分类Dev

使用Apache POI在Excel中将图像高度与行高度匹配

来自分类Dev

删除最后一行apache poi

来自分类Dev

使用Apache POI将整个行加粗

来自分类Dev

使用Apache POI更改Word文件中的特定行

来自分类Dev

使用`Replace()`方法不会替换Apache POI中的文本

来自分类Dev

使用Apache POI在Excel中删除多行

来自分类Dev

使用Apache Poi在outpout docx中创建无限虚假页面

来自分类Dev

使用Apache POI识别Word女士中的项目符号

来自分类Dev

如何使用Java Apache POI在Excel中添加标题列?

来自分类Dev

使用Java中的Apache POI读取上标Excel文本

来自分类Dev

如何使用Apache POI读取特定行?

来自分类Dev

使用Apache POI的PatternSyntaxException

来自分类Dev

使用Apache POI在Excel中创建条形图

来自分类Dev

Apache Felix与Apache POI的配合使用

来自分类Dev

使用Apache poi在excel中设计折线图

来自分类Dev

使用Apache-POI获取docx每个段落的行

来自分类Dev

如何使用Apache POI获取Java中Excel工作表各行的最后一列值

来自分类Dev

使用Apache POI API从Excel文件中读取值

来自分类Dev

如何使用Apache POI删除行

来自分类Dev

使用Apache_poi删除包含特定文本的Excel行

来自分类Dev

如何使用Apache POI从Excel中获得价值

来自分类Dev

使用Apache POI更改Word文件中的特定行

来自分类Dev

Apache Felix与Apache POI的配合使用

来自分类Dev

使用Apache POI读取/写入不同的Microsoft Office文件格式

来自分类Dev

在 apache poi 中使用 for 循环

Related 相关文章

热门标签

归档