java导出Excel

来源:互联网 发布:网络协议实践加密技术 编辑:程序博客网 时间:2024/05/21 09:47

1.弹出下载框

             response.setContentType("application/vnd.ms-excel; charset=utf-8");
            response.setHeader("Content-Disposition","attachment;filename=" + java.net.URLEncoder.encode("销售物料列表.xlsx", "UTF-8"));
            response.setCharacterEncoding("utf-8");

   设置响应浏览器


2.利用HSSFWorkbook创建Excel并设置样式

HSSFWorkbook wb = new HSSFWorkbook();
// 工作表
HSSFSheet sheet = wb.createSheet("first sheet");
// 行
HSSFRow row = sheet.createRow(0);
// 单元格
HSSFCell cell = row.createCell(0);
row.createCell(0).setCellValue("序号");// calendar
// date
row.createCell(1).setCellValue("物料名");// date
// double
row.createCell(2).setCellValue("销量");
// string
row.createCell(3).setCellValue("库存");
row.createCell(4).setCellValue("周转期");
row.createCell(5).setCellValue("平摊收入");
row.createCell(6).setCellValue("平均折扣");
for(int i=0;i<list.size();i++){
HSSFRow rowA = sheet.createRow(i+1);
rowA.createCell(0).setCellValue(i+1);// calendar
// date
rowA.createCell(1).setCellValue(list.get(i).getName());// date
// double
rowA.createCell(2).setCellValue(list.get(i).getSalesNum());
// string
rowA.createCell(3).setCellValue(list.get(i).getStock());
rowA.createCell(4).setCellValue(new Integer("0"));
rowA.createCell(5).setCellValue(list.get(i).getAvgIncome().doubleValue());
rowA.createCell(6).setCellValue(list.get(i).getAvgDiscount().doubleValue());
}



// 创建数据格式对象
HSSFDataFormat format = wb.createDataFormat();
// 设置列宽(单位:1/20 点)
sheet.setColumnWidth(1, 5000);
sheet.setColumnWidth(2, 2000);
// 自动列宽
// 自动回绕文本
wb.createSheet("second sheet");
return wb;


0 0
原创粉丝点击