Java生成excel表格
定义一个excel文件的模板
private static final String EXCEL_IN_TABLE_HEADS = "";
String titleName = "物资入库导入模板";
Workbook wb = ExcelUtils.createWorkBook(titleName);
try {
String[] headerArr = EXCEL_IN_TABLE_HEADS.split("-");
Sheet sheet = wb.getSheet(titleName);
Row header = sheet.createRow(0);
header.setHeight((short) (24 * 20));
CellStyle style = wb.createCellStyle();
style.setAlignment(HorizontalAlignment.CENTER);
style.setVerticalAlignment(VerticalAlignment.CENTER);
style.setBorderBottom(BorderStyle.THIN);
style.setBorderLeft(BorderStyle.THIN);
style.setBorderTop(BorderStyle.THIN);
style.setBorderRight(BorderStyle.THIN);
Font font = wb.createFont();
font.setFontName("宋体");
font.setBold(true);
font.setColor(HSSFFont.COLOR_NORMAL);
font.setFontHeightInPoints((short) 12);
style.setFont(font);
for (int i = 0; i < headerArr.length; i++) {
int len = Math.max(headerArr[i].length(), 4);
sheet.setColumnWidth(i, len * 256 * 2);
Cell cell = header.createCell(i);
cell.setCellValue(headerArr[i]);
cell.setCellStyle(style);
}
String fileName = titleName + ".xls";
response.setHeader("content-Type", "application/vnd.ms-excel");
OutputStream os = new BufferedOutputStream(response.getOutputStream());
response.setCharacterEncoding("UTF-8");
response.setHeader("Content-Disposition",
"attachment;filename=" + URLEncoder.encode(fileName, "UTF-8"));
wb.write(os);
os.flush();
os.close();
} catch (IOException e) {
e.printStackTrace();
throw new WarnException("模板下载异常!");
}
return new SuccessResponse("模板下载成功");