1200字范文,内容丰富有趣,写作的好帮手!
1200字范文 > POI导出Excel设置单元格背景色

POI导出Excel设置单元格背景色

时间:2023-03-21 23:06:10

相关推荐

POI导出Excel设置单元格背景色

POI导出Excel设置单元格背景色

导出Excel的时候,没有设置背景色,用版本的Excel工具打开会出现文档单元格背景自动填充黑色的情况,没有找到好的解决方法,就主动给他填充一种颜色,问题就算解决了。在WPS中似乎会自动将黑色改为白色,所以我用WPS看不到填充黑色的情况。

This example shows you Excel cell fills and colors using Apache POI.In our example i have used all the possible colors and set it as Fills background colors of cells.Below is the example code.package com.java.connect.poi;import java.io.FileOutputStream;import java.io.IOException;import org.apache.poi.ss.usermodel.Cell;import org.apache.poi.ss.usermodel.CellStyle;import org.apache.poi.ss.usermodel.IndexedColors;import org.apache.poi.ss.usermodel.Row;import org.apache.poi.ss.usermodel.Sheet;import org.apache.poi.ss.usermodel.Workbook;import org.apache.poi.xssf.usermodel.XSSFWorkbook;public class POIFillAndColorExample {public static void main(String[] args) throws IOException {// Create a workbook objectWorkbook workbook = new XSSFWorkbook();// Create sheetSheet sheet = workbook.createSheet();// Create a row and put some cells in itRow row = sheet.createRow((short) 1);// Aqua backgroundCellStyle style = workbook.createCellStyle();style.setFillForegroundColor(IndexedColors.AQUA.getIndex());style.setFillPattern(CellStyle.SOLID_FOREGROUND);Cell cell = row.createCell((short) 1);cell.setCellValue("X1");cell.setCellStyle(style);// Orange "foreground", foreground being the fill foreground not the// font color.style = workbook.createCellStyle();style.setFillForegroundColor(IndexedColors.AUTOMATIC.getIndex());style.setFillPattern(CellStyle.SOLID_FOREGROUND);cell = row.createCell((short) 2);cell.setCellValue("X2");cell.setCellStyle(style);style = workbook.createCellStyle();style.setFillForegroundColor(IndexedColors.BLUE.getIndex());style.setFillPattern(CellStyle.SOLID_FOREGROUND);cell = row.createCell((short) 3);cell.setCellValue("X3");cell.setCellStyle(style);style = workbook.createCellStyle();style.setFillForegroundColor(IndexedColors.BLUE_GREY.getIndex());style.setFillPattern(CellStyle.SOLID_FOREGROUND);cell = row.createCell((short) 4);cell.setCellValue("X4");cell.setCellStyle(style);style = workbook.createCellStyle();style.setFillForegroundColor(IndexedColors.BRIGHT_GREEN.getIndex());style.setFillPattern(CellStyle.SOLID_FOREGROUND);cell = row.createCell((short) 5);cell.setCellValue("X5");cell.setCellStyle(style);// Create a row and put some cells in it.Row row2 = sheet.createRow((short) 2);style = workbook.createCellStyle();style.setFillForegroundColor(IndexedColors.BROWN.getIndex());style.setFillPattern(CellStyle.SOLID_FOREGROUND);cell = row2.createCell((short) 1);cell.setCellValue("X6");cell.setCellStyle(style);style = workbook.createCellStyle();style.setFillForegroundColor(IndexedColors.CORAL.getIndex());style.setFillPattern(CellStyle.SOLID_FOREGROUND);cell = row2.createCell((short) 2);cell.setCellValue("X7");cell.setCellStyle(style);style = workbook.createCellStyle();style.setFillForegroundColor(IndexedColors.CORNFLOWER_BLUE.getIndex());style.setFillPattern(CellStyle.SOLID_FOREGROUND);cell = row2.createCell((short) 3);cell.setCellValue("X8");cell.setCellStyle(style);style = workbook.createCellStyle();style.setFillForegroundColor(IndexedColors.DARK_BLUE.getIndex());style.setFillPattern(CellStyle.SOLID_FOREGROUND);cell = row2.createCell((short) 4);cell.setCellValue("X9");cell.setCellStyle(style);style = workbook.createCellStyle();style.setFillForegroundColor(IndexedColors.DARK_GREEN.getIndex());style.setFillPattern(CellStyle.SOLID_FOREGROUND);cell = row2.createCell((short) 5);cell.setCellValue("X10");cell.setCellStyle(style);// Create a row and put some cells in it.Row row3 = sheet.createRow((short) 3);style = workbook.createCellStyle();style.setFillForegroundColor(IndexedColors.DARK_RED.getIndex());style.setFillPattern(CellStyle.SOLID_FOREGROUND);cell = row3.createCell((short) 1);cell.setCellValue("X11");cell.setCellStyle(style);style = workbook.createCellStyle();style.setFillForegroundColor(IndexedColors.DARK_TEAL.getIndex());style.setFillPattern(CellStyle.SOLID_FOREGROUND);cell = row3.createCell((short) 2);cell.setCellValue("X12");cell.setCellStyle(style);style = workbook.createCellStyle();style.setFillForegroundColor(IndexedColors.DARK_YELLOW.getIndex());style.setFillPattern(CellStyle.SOLID_FOREGROUND);cell = row3.createCell((short) 3);cell.setCellValue("X13");cell.setCellStyle(style);style = workbook.createCellStyle();style.setFillForegroundColor(IndexedColors.GOLD.getIndex());style.setFillPattern(CellStyle.SOLID_FOREGROUND);cell = row3.createCell((short) 4);cell.setCellValue("X14");cell.setCellStyle(style);style = workbook.createCellStyle();style.setFillForegroundColor(IndexedColors.GREEN.getIndex());style.setFillPattern(CellStyle.SOLID_FOREGROUND);cell = row3.createCell((short) 5);cell.setCellValue("X15");cell.setCellStyle(style);// Create a row and put some cells in it.Row row4 = sheet.createRow((short) 4);style = workbook.createCellStyle();style.setFillForegroundColor(IndexedColors.GREY_25_PERCENT.getIndex());style.setFillPattern(CellStyle.SOLID_FOREGROUND);cell = row4.createCell((short) 1);cell.setCellValue("X16");cell.setCellStyle(style);style = workbook.createCellStyle();style.setFillForegroundColor(IndexedColors.GREY_40_PERCENT.getIndex());style.setFillPattern(CellStyle.SOLID_FOREGROUND);cell = row4.createCell((short) 2);cell.setCellValue("X17");cell.setCellStyle(style);style = workbook.createCellStyle();style.setFillForegroundColor(IndexedColors.GREY_50_PERCENT.getIndex());style.setFillPattern(CellStyle.SOLID_FOREGROUND);cell = row4.createCell((short) 3);cell.setCellValue("X18");cell.setCellStyle(style);style = workbook.createCellStyle();style.setFillForegroundColor(IndexedColors.GREY_80_PERCENT.getIndex());style.setFillPattern(CellStyle.SOLID_FOREGROUND);cell = row4.createCell((short) 4);cell.setCellValue("X19");cell.setCellStyle(style);style = workbook.createCellStyle();style.setFillForegroundColor(IndexedColors.INDIGO.getIndex());style.setFillPattern(CellStyle.SOLID_FOREGROUND);cell = row4.createCell((short) 5);cell.setCellValue("X20");cell.setCellStyle(style);// Create a row and put some cells in it.Row row5 = sheet.createRow((short) 5);style = workbook.createCellStyle();style.setFillForegroundColor(IndexedColors.LAVENDER.getIndex());style.setFillPattern(CellStyle.SOLID_FOREGROUND);cell = row5.createCell((short) 1);cell.setCellValue("X21");cell.setCellStyle(style);style = workbook.createCellStyle();style.setFillForegroundColor(IndexedColors.LEMON_CHIFFON.getIndex());style.setFillPattern(CellStyle.SOLID_FOREGROUND);cell = row5.createCell((short) 2);cell.setCellValue("X22");cell.setCellStyle(style);style = workbook.createCellStyle();style.setFillForegroundColor(IndexedColors.LIGHT_BLUE.getIndex());style.setFillPattern(CellStyle.SOLID_FOREGROUND);cell = row5.createCell((short) 3);cell.setCellValue("X23");cell.setCellStyle(style);style = workbook.createCellStyle();style.setFillForegroundColor(IndexedColors.LEMON_CHIFFON.getIndex());style.setFillPattern(CellStyle.SOLID_FOREGROUND);cell = row5.createCell((short) 4);cell.setCellValue("X24");cell.setCellStyle(style);style = workbook.createCellStyle();style.setFillForegroundColor(IndexedColors.LIGHT_BLUE.getIndex());style.setFillPattern(CellStyle.SOLID_FOREGROUND);cell = row5.createCell((short) 5);cell.setCellValue("X25");cell.setCellStyle(style);// Create a row and put some cells in it.Row row6 = sheet.createRow((short) 6);style = workbook.createCellStyle();style.setFillForegroundColor(IndexedColors.LIGHT_CORNFLOWER_BLUE.getIndex());style.setFillPattern(CellStyle.SOLID_FOREGROUND);cell = row6.createCell((short) 1);cell.setCellValue("X26");cell.setCellStyle(style);style = workbook.createCellStyle();style.setFillForegroundColor(IndexedColors.LIGHT_GREEN.getIndex());style.setFillPattern(CellStyle.SOLID_FOREGROUND);cell = row6.createCell((short) 2);cell.setCellValue("X27");cell.setCellStyle(style);style = workbook.createCellStyle();style.setFillForegroundColor(IndexedColors.LIGHT_ORANGE.getIndex());style.setFillPattern(CellStyle.SOLID_FOREGROUND);cell = row6.createCell((short) 3);cell.setCellValue("X28");cell.setCellStyle(style);style = workbook.createCellStyle();style.setFillForegroundColor(IndexedColors.LIGHT_TURQUOISE.getIndex());style.setFillPattern(CellStyle.SOLID_FOREGROUND);cell = row6.createCell((short) 4);cell.setCellValue("X29");cell.setCellStyle(style);style = workbook.createCellStyle();style.setFillForegroundColor(IndexedColors.LIGHT_YELLOW.getIndex());style.setFillPattern(CellStyle.SOLID_FOREGROUND);cell = row6.createCell((short) 5);cell.setCellValue("X30");cell.setCellStyle(style);// Create a row and put some cells in it.Row row7 = sheet.createRow((short) 7);style = workbook.createCellStyle();style.setFillForegroundColor(IndexedColors.LIME.getIndex());style.setFillPattern(CellStyle.SOLID_FOREGROUND);cell = row7.createCell((short) 1);cell.setCellValue("X31");cell.setCellStyle(style);style = workbook.createCellStyle();style.setFillForegroundColor(IndexedColors.MAROON.getIndex());style.setFillPattern(CellStyle.SOLID_FOREGROUND);cell = row7.createCell((short) 2);cell.setCellValue("X32");cell.setCellStyle(style);style = workbook.createCellStyle();style.setFillForegroundColor(IndexedColors.OLIVE_GREEN.getIndex());style.setFillPattern(CellStyle.SOLID_FOREGROUND);cell = row7.createCell((short) 3);cell.setCellValue("X33");cell.setCellStyle(style);style = workbook.createCellStyle();style.setFillForegroundColor(IndexedColors.ORANGE.getIndex());style.setFillPattern(CellStyle.SOLID_FOREGROUND);cell = row7.createCell((short) 4);cell.setCellValue("X34");cell.setCellStyle(style);style = workbook.createCellStyle();style.setFillForegroundColor(IndexedColors.ORCHID.getIndex());style.setFillPattern(CellStyle.SOLID_FOREGROUND);cell = row7.createCell((short) 5);cell.setCellValue("X35");cell.setCellStyle(style);// Create a row and put some cells in it.Row row8 = sheet.createRow((short) 8);style = workbook.createCellStyle();style.setFillForegroundColor(IndexedColors.PALE_BLUE.getIndex());style.setFillPattern(CellStyle.SOLID_FOREGROUND);cell = row8.createCell((short) 1);cell.setCellValue("X36");cell.setCellStyle(style);style = workbook.createCellStyle();style.setFillForegroundColor(IndexedColors.PINK.getIndex());style.setFillPattern(CellStyle.SOLID_FOREGROUND);cell = row8.createCell((short) 2);cell.setCellValue("X37");cell.setCellStyle(style);style = workbook.createCellStyle();style.setFillForegroundColor(IndexedColors.PLUM.getIndex());style.setFillPattern(CellStyle.SOLID_FOREGROUND);cell = row8.createCell((short) 3);cell.setCellValue("X38");cell.setCellStyle(style);style = workbook.createCellStyle();style.setFillForegroundColor(IndexedColors.RED.getIndex());style.setFillPattern(CellStyle.SOLID_FOREGROUND);cell = row8.createCell((short) 4);cell.setCellValue("X39");cell.setCellStyle(style);style = workbook.createCellStyle();style.setFillForegroundColor(IndexedColors.ROSE.getIndex());style.setFillPattern(CellStyle.SOLID_FOREGROUND);cell = row8.createCell((short) 5);cell.setCellValue("X40");cell.setCellStyle(style);// Create a row and put some cells in it.Row row9 = sheet.createRow((short) 9);style = workbook.createCellStyle();style.setFillForegroundColor(IndexedColors.ROYAL_BLUE.getIndex());style.setFillPattern(CellStyle.SOLID_FOREGROUND);cell = row9.createCell((short) 1);cell.setCellValue("X41");cell.setCellStyle(style);style = workbook.createCellStyle();style.setFillForegroundColor(IndexedColors.SEA_GREEN.getIndex());style.setFillPattern(CellStyle.SOLID_FOREGROUND);cell = row9.createCell((short) 2);cell.setCellValue("X42");cell.setCellStyle(style);style = workbook.createCellStyle();style.setFillForegroundColor(IndexedColors.SKY_BLUE.getIndex());style.setFillPattern(CellStyle.SOLID_FOREGROUND);cell = row9.createCell((short) 3);cell.setCellValue("X43");cell.setCellStyle(style);style = workbook.createCellStyle();style.setFillForegroundColor(IndexedColors.TAN.getIndex());style.setFillPattern(CellStyle.SOLID_FOREGROUND);cell = row9.createCell((short) 4);cell.setCellValue("X44");cell.setCellStyle(style);style = workbook.createCellStyle();style.setFillForegroundColor(IndexedColors.TEAL.getIndex());style.setFillPattern(CellStyle.SOLID_FOREGROUND);cell = row9.createCell((short) 5);cell.setCellValue("X45");cell.setCellStyle(style);// Create a row and put some cells in it.Row row10 = sheet.createRow((short) 10);style = workbook.createCellStyle();style.setFillForegroundColor(IndexedColors.TURQUOISE.getIndex());style.setFillPattern(CellStyle.SOLID_FOREGROUND);cell = row10.createCell((short) 1);cell.setCellValue("X46");cell.setCellStyle(style);style = workbook.createCellStyle();style.setFillForegroundColor(IndexedColors.VIOLET.getIndex());style.setFillPattern(CellStyle.SOLID_FOREGROUND);cell = row10.createCell((short) 2);cell.setCellValue("X47");cell.setCellStyle(style);style = workbook.createCellStyle();style.setFillForegroundColor(IndexedColors.WHITE.getIndex());style.setFillPattern(CellStyle.SOLID_FOREGROUND);cell = row10.createCell((short) 3);cell.setCellValue("X48");cell.setCellStyle(style);style = workbook.createCellStyle();style.setFillForegroundColor(IndexedColors.YELLOW.getIndex());style.setFillPattern(CellStyle.SOLID_FOREGROUND);cell = row10.createCell((short) 3);cell.setCellValue("X49");cell.setCellStyle(style);// Write the output to a fileFileOutputStream fileOut = new FileOutputStream("POIFillAndColorExample.xlsx");workbook.write(fileOut);fileOut.close();}}

如颜色类型是在HSSFColor里面定义的.执行结果暂时没放上来,后来再补充。

注意:

(1)必须调用设置前景色的方法来设置背景色;

(2)必须调用setFillPattern()方法设置全填充。

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。