勿忘我(字体颜色,对齐,大小,合并单元格)"/>
EXCEL生成勿忘我(字体颜色,对齐,大小,合并单元格)
public static void writeExcel(ExcelParam excelParam) throws IOException {//创建一个工作薄Workbook wb = new HSSFWorkbook();//创建一个sheetSheet sheet = wb.createSheet("sheet1");// 设置字体Font font = wb.createFont();font.setColor(HSSFFont.COLOR_NORMAL); //字体颜色font.setFontName("微软雅黑"); //字体font.setFontHeightInPoints((short)18);// font.setItalic(true1); //是否使用斜体// font.setStrikeout(true); //是否使用划线// 设置单元格类型CellStyle cellStyle = wb.createCellStyle();cellStyle.setBorderBottom(BorderStyle.THIN); //下边框cellStyle.setBorderLeft(BorderStyle.THIN);//左边框cellStyle.setBorderTop(BorderStyle.THIN);//上边框cellStyle.setBorderRight(BorderStyle.THIN);//右边框cellStyle.setFont(font);cellStyle.setAlignment(HorizontalAlignment.CENTER); //水平布局:居中//设置单元格内容垂直对其方式为居中cellStyle.setVerticalAlignment(VerticalAlignment.CENTER);// cellStyle.setWrapText(true); // 自动换行//创建一行标题Row rowHead = sheet.createRow(0);//填充标题内容//向表头填充数据Font fh = wb.createFont();fh.setColor(HSSFFont.COLOR_RED); //字体颜色fh.setFontName("黑体"); //字体fh.setBold(true);fh.setFontHeightInPoints((short)22);CellStyle sh = wb.createCellStyle();sh.setBorderBottom(BorderStyle.THIN); //下边框sh.setBorderLeft(BorderStyle.THIN);//左边框sh.setBorderTop(BorderStyle.THIN);//上边框sh.setBorderRight(BorderStyle.THIN);//右边框sh.setFont(fh);sh.setAlignment(HorizontalAlignment.CENTER); //水平布局:居中//设置单元格内容垂直对其方式为居中sh.setVerticalAlignment(VerticalAlignment.CENTER);for (int i = 0; i < excelParam.getHead().size(); i++) {// 合并单元格第一行sheet.addMergedRegion(new CellRangeAddress(0,0,0,excelParam.getData().get(0).size()-1));Cell cell = rowHead.createCell(i);cell.setCellValue(excelParam.getHead().get(i));cell.setCellStyle(sh);cell.setCellType(STRING);}//表格主体 解析list//表格内容for (int i = 0; i < excelParam.getData().size(); i++) { //行数Row row = sheet.createRow(i + 1);for (int j = 0; j < excelParam.getData().get(i).size(); j++) { //列数// 列自动适应sheet.autoSizeColumn(j);Cell cell = row.createCell(j);cell.setCellValue(excelParam.getData().get(i).get(j));cell.setCellStyle(cellStyle);cell.setCellType(STRING);}}//判断是否存在目录.File file = new File(excelParam.getFilePath());if (!file.getParentFile().exists()) {// 不存在则创file.mkdirs();}// 输出Excel文件1 FileOutputStream output = new FileOutputStream(file);wb.write(output);//写入磁盘 output.close(); }
更多推荐
EXCEL生成勿忘我(字体颜色,对齐,大小,合并单元格)
发布评论