基本
Workbook wb= new HSSFWorkbook();
Sheet sheet = wb.createSheet("sheetName");
Row row = sheet.createRow(0); //第一行
Cell cell = row.createCell(0);//第一个单元格
cell.setCellValue("企业名称");//单元格赋值
cell.setCellStyle(cellStyle);//设置样式
FileOutputStream fos = new FileOutputStream("c:/workbook.xls");
wb.write(fos);
fos.close();
合并单元格
CellRangeAddress(int firstRow, int lastRow, int firstCol, int lastCol)
参数:起始行号,终止行号, 起始列号,终止列号
例:
CellRangeAddress cra =new CellRangeAddress(0, 1, 0, 0); //合并第一列两行
sheet.addMergedRegion(cra);
冻结、固定表头
CreateFreezePane的参数
第一个参数表示要冻结的列数;
第二个参数表示要冻结的行数,这里只冻结列所以为0;
第三个参数表示右边区域可见的首列序号,从1开始计算;
第四个参数表示下边区域可见的首行序号,也是从1开始计算,这里是冻结列,所以为0;
例:sheet.createFreezePane(1,2,1,2);
链接
cell.setCellFormula("HYPERLINK(\\"文件夹地址或者网址\\",\\"" + "附件"+ "\\")");
//link样式
HSSFCellStyle linkStyle = (HSSFCellStyle) wb.createCellStyle();
HSSFFont cellFont= (HSSFFont) wb.createFont();
cellFont.setUnderline((byte) 1);
cellFont.setColor(HSSFColor.BLUE.index);
linkStyle.setFont(cellFont);
cell.setCellStyle(linkStyle);
格式化
文本:@
货币:#,##0.00
日期:yyyy年m月d日
例: HSSFCellStyle numberStyle = (HSSFCellStyle) wb.createCellStyle();
DataFormat format = wb.createDataFormat();
numberStyle.setDataFormat(format.getFormat("#,##0.00"));
cell.setCellStyle(numberStyle);
1,290,588.00