gpt4 book ai didi

java - 如何在java中更改现有Excel(xlsx或xls)单元格的颜色

转载 作者:行者123 更新时间:2023-12-01 11:36:16 25 4
gpt4 key购买 nike

我的要求是我必须读取并验证Excel文件并插入到数据库,最初我正在读取文件并将其插入到数据库,如果数据已经存在于数据库中,我将返回行号和列号对于数据库中的重复项,我需要根据行号和列号更改这些单元格的颜色。

谁能帮我解决这个问题吗?或者可以提出任何如何读取/写入和验证Excel文件的想法,(验证是指我需要将Excel文件中的数据与数据库中的数据进行比较)。

目前我正在使用 apache poi

最佳答案

此答案适用于 .xls;不过 xlsx 的 API 非常相似。读取 Excel 文件很容易,打开该文件的 FileInputstream,然后创建一个 HSSFWorkbook

HSSFWorkbook workbook = new HSSFWorkbook(inputStream);

要更改某些单元格的颜色,您首先必须使用该颜色创建一个样式(更改单元格的样式也会更改其他一些属性,例如字体等,因此这里的事情可能会变得有点困惑,但这就是 Excel 的工作原理)

colorStyle = workbook.createCellStyle();
colorStyle.setFillPattern(HSSFCellStyle.SOLID_FOREGROUND);
colorStyle.setFillForegroundColor(HSSFColor.RED.index);

现在您必须循环遍历所有工作簿中的行,识别重复项,并更改这些单元格的样式:

cell.setCellStyle(colorStyle);

最后,通过 FileOutputStream 将工作簿写入新文件

workbook.write(outputStream);

关于java - 如何在java中更改现有Excel(xlsx或xls)单元格的颜色,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29961078/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com