POI画Excel表格

/**创建HSSFWorkbook对象(excel的文档对象)*/
HSSFWorkbook wkb = new HSSFWorkbook();


//用于设置单元格的显示样式
HSSFCellStyle cellstyle = (HSSFCellStyle) wkb.createCellStyle();
cellstyle.setAlignment(HSSFCellStyle.ALIGN_CENTER);// 设置居中
HSSFFont bigTitleHeaderFont = (HSSFFont) wkb.createFont();
bigTitleHeaderFont.setFontHeightInPoints((short) 16);    //设置字体大小    
bigTitleHeaderFont.setBoldweight(HSSFFont.BOLDWEIGHT_BOLD);// 字体加粗
cellstyle.setFont(bigTitleHeaderFont);

HSSFCellStyle styleOne = wkb.createCellStyle();
HSSFFont fontOne = wkb.createFont();
fontOne.setColor(HSSFColor.GREEN.index);//绿色
styleOne.setFont(fontOne);

比较全面的POI Excel导出样式设置

//建立新的sheet对象(excel的表单)  创建底部菜单
HSSFSheet sheet = wkb.createSheet();
sheet.setColumnWidth(1, 30 * 256); //设置第二列的宽度
wkb.setSheetName(0, "XXXXX ");

/**
new CellRangeAddress(a,b,c,d)
参数1:起始行 参数2:终止行 参数3:起始列 参数4:终止列
*/
sheet.addMergedRegion(new CellRangeAddress(0,1,0,18));//从第1行到第二行结束,从第1列开始到19列结束(合并单元格,下标从0开始)
HSSFRow row0 = sheet.createRow(0);  //在sheet里创建第一行(下标从0开始)
HSSFCell cell2_0 = row0.createCell(0);
cell2_0.setCellValue("XXXX");  //设置单元格内容
cell2_0.setCellStyle(cellstyle);  //赋予样式
/*
row0.createCell(0).setCellStyle(cellstyle);
连着写的话设置的样式无效
**/


........

/**a,b,c,d泛指数字*/
sheet1.addMergedRegion(new CellRangeAddress(a,b,c,d));
HSSFRow row10 = sheet1.createRow(a); //在sheet里创建第(a+1)行
HSSFCell cell00_01 = row10.createCell(c);
cell00_01.setCellValue("姓名: ");
cell00_01.setCellStyle(oneCellstyle);
sheet1.addMergedRegion(new CellRangeAddress(2,4,2,5));
HSSFCell cell01_02 = row10.createCell(2);
cell01_02.setCellValue("");
cell01_02.setCellStyle(cellstyle);


......


//输出Excel文件
 try {
     OutputStream output = response.getOutputStream();
     response.reset();

     String filename = "XXXX";
     response.setContentType("application/x-download");//处理乱码问题
     response.setCharacterEncoding("utf-8");
     response.setHeader("Content-Disposition", "attachment;filename=" + new String(filename.getBytes("utf-8") , "iso8859-1") + ".xls");

     wkb.write(output);
     output.close();
} catch (Exception e) {
}
 
 

 

转载于:https://www.cnblogs.com/tu-emily/p/8417241.html

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值