Java WorkBook对Excel的基本操作
创建excel
Workbook hssfWorkbook = null;
hssfWorkbook = new XSSFWorkbook(is);//Excel 2007
hssfWorkbook = new HSSFWorkbook(is);//Excel 2003
创建sheet 并设置名称
Workbook wb = new XSSFWorkbook();
Sheet sheet1 = wb.createSheet("波波你行的sheet");
设置列宽
sheet1.setColumnWidth(0, (short)(8000)); //设置第一列列宽
sheet1.setColumnWidth(1, (short)(4000)); //设置第二列列宽
sheet1.setColumnWidth(2, (short)(4000)); // 设置第三列列宽
创建行
int row = 0;// excel行标 0表示第一行
Row row = sheet1.createRow(row);
设置行高
row.setHeightInPoints((float) 40);
在行上创建列
Cell cell = row.createCell(0);
设置列上显示的文本或者数组
cell.setCellValue("波波你行,你好");//设置第一行第一列文本为波波你行
设置列上文本为粗体
Font font = wb.createFont();
font.setBoldweight(HSSFFont.BOLDWEIGHT_BOLD);//粗体显示
XSSFRichTextString word = new XSSFRichTextString("波波你行,你好");
word.applyFont(font);
cell.setCellValue(word);//设置第一行第一列文本为波波你行,格式是粗体
设置列背景颜色
CellStyle style1 = wb.createCellStyle();
//设置背景颜色
style1.setFillPattern(CellStyle.SOLID_FOREGROUND);
style1.setFillForegroundColor(IndexedColors.SKY_BLUE.getIndex());
style1.setAlignment(HSSFCellStyle.ALIGN_CENTER);//水平居中显示
style1.setVerticalAlignment(HSSFCellStyle.VERTICAL_CENTER);//垂直
cell.setCellStyle(style1);
IndexColors 背景颜色代码
参考文章:https://blog.csdn.net/qq_20597149/article/details/80362730
excel表格设置为文本格式
DataFormat format = wb.createDataFormat();
// 设置为文本格式,
style1.setDataFormat(format.getFormat("@"));
合并单元格,并设置边框
int row = 0;// excel行标 0表示第一行
Row row = sheet1.createRow(row);
Cell cell = row.createCell(0);
// 合并单元格(4个参数,分别为起始行,结束行,起始列,结束列)
// 行和列都是从0开始计数,且起始结束都会合并
CellRangeAddress region = new CellRangeAddress(4, 4, 5, 9);
sheet1.addMergedRegion(region);
// 使用RegionUtil类为合并后的单元格添加边框
RegionUtil.setBorderBottom(2, region, sheet1, wb); // 下边框
RegionUtil.setBorderLeft(2, region, sheet1, wb); // 左边框
RegionUtil.setBorderRight(2, region, sheet1, wb); // 有边框
RegionUtil.setBorderTop(2, region, sheet1, wb); // 上边框
cellHead.setCellValue("波波你行的带边框合并单元格");