Java 使用ApachePOI在xls文件中填充单元格

Java 使用ApachePOI在xls文件中填充单元格,java,cell,fill,hssf,Java,Cell,Fill,Hssf,为什么它不起作用?我使用setFillForegroundColor,它会清除单元格,而不是用颜色(石灰)填充单元格 //获取XLS文件的工作簿实例 HSSF工作簿=新的HSSF工作簿(文件); CreationHelper createHelper=workbook.getCreationHelper(); //从工作簿中获取第一张工作表 HSSFSheet sheet=工作簿。getSheetAt(0); CellStyle style=workbook.createCellStyle();

为什么它不起作用?我使用
setFillForegroundColor
,它会清除单元格,而不是用颜色(石灰)填充单元格

//获取XLS文件的工作簿实例
HSSF工作簿=新的HSSF工作簿(文件);
CreationHelper createHelper=workbook.getCreationHelper();
//从工作簿中获取第一张工作表
HSSFSheet sheet=工作簿。getSheetAt(0);
CellStyle style=workbook.createCellStyle();
setFillForegroundColor(IndexedColors.LIME.getIndex());
......
标签1:

对于(int i=0;我在这里回答:尝试
style.setFillForegroundColor(IndexedColors.LIME.getIndex());
就在
row.createCell(2+j).setCellStyle(style)之前;
//Get the workbook instance for XLS file
HSSFWorkbook workbook = new HSSFWorkbook(file);
CreationHelper createHelper = workbook.getCreationHelper();
//Get first sheet from the workbook
HSSFSheet sheet = workbook.getSheetAt(0);
CellStyle style = workbook.createCellStyle();
style.setFillForegroundColor(IndexedColors.LIME.getIndex());
    ......
                label1:
                for (int i=0;i<ListOfList.size();i++)                      {
                    Row row = sheet.getRow(i);
                    for (int j=0;j<ListOfList.get(i).size();j++) {

                        for (int k=0;k<List.size();k++){
                            if (List.get(k).equals(ListOfList.get(i).get(j)) | ListOfList.get(i).get(j).contains(List.get(k))) {
                                System.out.println("("+List.get(k)+") ASU <--> ("+ListOfList.get(i).get(j)+") RZS "+"Строчка: "+i+" Столбец: "+j);
                                row.createCell(2+j).setCellStyle(style);
                            }
                            else {}
                        }
                                                                 }
                                                                             }