Java 如何在excel中为单元格设置值和颜色

Java 如何在excel中为单元格设置值和颜色,java,apache-poi,Java,Apache Poi,当我执行这段代码时,我的excel只更新为红色表示失败,绿色表示通过 现在我的问题是我想在我的单元格中打印状态(失败或通过)和颜色,我应该如何做?这个问题缺乏对硒是什么的基本理解。Selenium或Selenium Webdriver是一个浏览器自动化库,可与不同的编程语言一起使用。Selenium包含用于操作web浏览器的方法。它本身不是一种编程语言 要操作Excel文件,您需要查找与Selenium一起使用的编程语言的信息。从示例代码中,我猜可能是Java?然后,您需要了解如何使用Java编

当我执行这段代码时,我的excel只更新为红色表示失败,绿色表示通过


现在我的问题是我想在我的单元格中打印状态(失败或通过)和颜色,我应该如何做?

这个问题缺乏对硒是什么的基本理解。Selenium或Selenium Webdriver是一个浏览器自动化库,可与不同的编程语言一起使用。Selenium包含用于操作web浏览器的方法。它本身不是一种编程语言

要操作Excel文件,您需要查找与Selenium一起使用的编程语言的信息。从示例代码中,我猜可能是Java?然后,您需要了解如何使用Java编写Excel文件

对于C,我更喜欢ByteScout


对于Java,这里有一个关于StackOverflow的线程:

从措辞上看,您认为sheet1.getRow(i).createCell(7)在做什么?对,它将在行中创建一个新的单元格7。所以在
sheet1.getRow(i).createCell(7).setCellValue(“Fail”)之后有一个新的单元格7,其内容为“Fail”。但是在
sheet1.getRow(i)、createCell(7)、setCellStyle(style1)之后有一个新的单元格7具有该样式。Do
sheet1.getRow(i).createCell(7).setCellValue(“失败”);表1.getRow(i).getCell(7).setCellStyle(style1)。因此,创建单元格并设置值,获得相同的单元格并设置样式。
style.setFillForegroundColor(IndexedColors.GREEN.getIndex());
style.setFillPattern(FillPatternType.SOLID_FOREGROUND);

CellStyle style1 = wb.createCellStyle();
style1.setFillForegroundColor(IndexedColors.RED.getIndex());
style1.setFillPattern(FillPatternType.SOLID_FOREGROUND);

String str = strText.substring(0, (strText.indexOf("k")-1));
//sheet1.getRow(i).createCell(8).setCellValue(str);
String strx = strText1.substring(0, (strText1.indexOf("k")-1));
//sheet1.getRow(i).createCell(9).setCellValue(strx);

double d = Double.parseDouble(str);
double d1 = Double.parseDouble(strx);

if(d>d1) {
    double no = (d1/d) + (d1 * (1/100));
    if(d>(d1+no)) {
        sheet1.getRow(i).createCell(7).setCellValue("Fail");
        sheet1.getRow(i).createCell(7).setCellStyle(style1);
    }
}
else {
    sheet1.getRow(i).createCell(7).setCellValue("Pass");
    sheet1.getRow(i).createCell(7).setCellStyle(style);
}

if(d1>d) {
    double nos = (d/d1) + (d * (1/100));
    if(d1>(d+nos)) {
        sheet1.getRow(i).createCell(7).setCellValue("Fail");
        sheet1.getRow(i).createCell(7).setCellStyle(style1);
    }
}

else {
    sheet1.getRow(i).createCell(7).setCellValue("Pass");
    sheet1.getRow(i).createCell(7).setCellStyle(style);
}