记录poi的一些样式操作方法

            // 创建Excel表格工作簿   

            Workbook wb = new XSSFWorkbook();   

            Sheet sheet = wb.createSheet("一个sheet");   

XSSFCellStyle style = monthWorkbook.createCellStyle();

//设置单元格的边框

// CellStyle.BORDER_DOUBLE      双边线   

// CellStyle.BORDER_THIN        细边线   

// CellStyle.BORDER_MEDIUM      中等边线   

// CellStyle.BORDER_DASHED      虚线边线   

// CellStyle.BORDER_HAIR        小圆点虚线边线   

// CellStyle.BORDER_THICK       粗边线   

style.setBorderTop(XSSFCellStyle.BORDER_THIN);//上边框
style.setBorderBottom(XSSFCellStyle.BORDER_THIN);//下边框
style.setBorderLeft(XSSFCellStyle.BORDER_THIN);//左边框
style.setBorderRight(XSSFCellStyle.BORDER_THIN);//右边框

// 设置单元格边框颜色   

style.setBottomBorderColor(new XSSFColor(java.awt.Color.RED));   

 style.setTopBorderColor(new XSSFColor(java.awt.Color.GREEN));   

 style.setLeftBorderColor(new XSSFColor(java.awt.Color.BLUE));   

// 设置单元格内容水平对其方式   
// XSSFCellStyle.ALIGN_CENTER       居中对齐   
// XSSFCellStyle.ALIGN_LEFT         左对齐   
// XSSFCellStyle.ALIGN_RIGHT        右对齐   
style.setAlignment(XSSFCellStyle.ALIGN_CENTER);

// 设置单元格内容垂直对其方式   
// XSSFCellStyle.VERTICAL_TOP       上对齐   
// XSSFCellStyle.VERTICAL_CENTER    中对齐   
// XSSFCellStyle.VERTICAL_BOTTOM    下对齐   
style.setVerticalAlignment(XSSFCellStyle.VERTICAL_CENTER);
style.setFillForegroundColor(IndexedColors.YELLOW.getIndex());//单元格背景色
style.setFillPattern(CellStyle.SOLID_FOREGROUND);

//自定义单元格颜色

style.setFillPattern(FillPatternType.SOLID_FOREGROUND);    //设置填充方案
XSSFColor xssfColor = new XSSFColor();
byte[] colorRgb = { (byte)146, (byte)205, (byte)220 };//颜色参数
xssfColor.setRGB(colorRgb);
style.setFillForegroundColor(xssfColor);//设置填充颜色

//设置字体样式

XSSFFont font = monthWorkbook.createFont();
font.setFontName("宋体");//设置字体名称
font.setFontHeightInPoints((short)10);//设置字号
font.setBold(true);//加粗
font.setItalic(true);// 设置字体为斜体字
font.setColor(Font.COLOR_RED);// 将字体设置为“红色”
font.setUnderline(Font.U_DOUBLE);// 添加(Font.U_SINGLE单条下划线/Font.U_DOUBLE双条下划线)
font.setStrikeout(true);// 是否添加删除线
style.setFont(font);
sheet.setColumnWidth(0, 4 * 256);//设置第一列的宽度是4个字符宽度
monthWorkbook.setSheetName(0, "sheet");//修改第一个sheet名称
XSSFRow rowTitle = sheet.createRow(0);//建行
rowTitle.setHeightInPoints(33);//设置行的高度是33个点

//合并单元格

CellRangeAddress cellRangeAddress= new CellRangeAddress(10 ,10 ,0,2);//第十一行至第十一行,第一列至第三列
sheet.addMergedRegion(cellRangeAddress);
HashMap getMonthFile = new HashMap<>();
File fileTemp = getFile("小额贷款公司与各类民间融资服务机构业务合作情况统计表.xlsx", getMonthFile);
FileOutputStream fileOutputStream = new FileOutputStream(fileTemp);
monthWorkbook.write(fileOutputStream);
fileOutputStream.flush();
fileOutputStream.close();
return getMonthFile;
private File getFile(String fileName, HashMap getMonthFile) {
    String filePath = new ParamFileUtil().getConfigProperty("config", "file_path");
    String fileRealPath = new ParamFileUtil().getConfigProperty("config", "file_real_path");

    filePath += fileName;
    getMonthFile.put("fileName", fileName);
    getMonthFile.put("filePath", filePath);
    File fileTemp = new File(fileRealPath + fileName);
    if (!fileTemp.exists()) {
        FileUtil.makeDirectory(fileTemp);
    }
    if (!fileTemp.isDirectory()) {
        FileUtil.touch(fileTemp);
    }
    return fileTemp;
}

你可能感兴趣的:(记录poi的一些样式操作方法)