直接看代码吧,没什么可说的。
读取模板
填充一个表格
合并单元格
生成
读取模板
String pathfrom="d:/excelmodel.xlsx";
XSSFWorkbook wb = new XSSFWorkbook(pathfrom);
XSSFSheet sheet = wwb.getSheetAt(0);
填充一个表格
public void makeLable(XSSFSheet sheet,int col,int row,String value){
XSSFRow r=sheet.getRow(row)!=null?sheet.getRow(row):sheet.createRow(row);
XSSFCell cell=r.getCell(col)!=null?r.getCell(col):r.createCell(col);
cell.setCellValue(value);
}
合并单元格
public void mergeCells(XSSFSheet sheet,int rowfrom,int rowto,int colfrom,int colto){
CellRangeAddress region = new CellRangeAddress(rowfrom,rowto,colfrom,colto);
sheet.addMergedRegion(region);
XSSFCell cell=sheet.getRow(rowfrom).getCell(colfrom);
cell.getCellStyle().setAlignment(HorizontalAlignment.CENTER);
}
生成
String pathTo="D:/test.xlsx";
FileOutputStream fs = new FileOutputStream(pathTo);
wb.write(fs);
fs.close();
FileInputStream temp = new FileInputStream(pathTo);
file = new File(pathTo);