execl导出

 注意:需要工具poi jar包
 /**
     * execl导出
	 * @param list   内容
	 * @param request  请求
	 * @param response  响应
	 */
	public static void exportExcelWorkbook(List<?> list,HttpServletRequest request, HttpServletResponse response){
		       OutputStream out =null;
		try {
				Workbook work = new HSSFWorkbook();
				Sheet sheet = work.createSheet("sheet1");
				//CellStyle  cellStyle =work.createCellStyle();
				//cellStyle .setFillForegroundColor(HSSFColor.AQUA.index);
				//cellStyle.setFillBackgroundColor(HSSFColor.AQUA.index);
			    //cellStyle.setFillPattern(HSSFCellStyle.FINE_DOTS);
				Row row = sheet.createRow(0);
				//sheet.setDefaultColumnStyle(1, sheetStyle);
                                  //先加载列名
                                for (int i = 0; i < HERDES.length; i++) {
					Cell cell=row.createCell(i);
					//cell.setCellStyle(cellStyle);
					cell.setCellValue(HERDES[i]);
					sheet.setColumnWidth(i, (30 * 110));
					
				}
                                  //new row 开始加载内容
                               for (int i = 0; i < list.size(); i++) {
					row = sheet.createRow(i + 1);
					Object veObj =list.get(i);
					String[] arr = veObj.toString().split(",");   //这里重写了toString(),更好的转换数组型
					for (int k = 0; k < HERDES.length; k++) {
						row.createCell(k).setCellValue(arr[k].substring(arr[k].indexOf("=") + 1).equals("null") ? " "
								: arr[k].substring(arr[k].indexOf("=") + 1));
					}
				}
				//LOGGER.info("============excel数据填充加载完成===========");
				response.setHeader("Content-Disposition",
						"attachment;filename=" + new String(filename.getBytes("utf-8"), "iso8859-1"));
				response.setContentType("application/ynd.ms-excel;charset=UTF-8");
				out = response.getOutputStream();
				work.write(out);
			} catch (Exception e) {
                  LOGGER.error(e.getMessage());				
			}finally {
			   try {
					 out.flush();
					 out.close();
					// LOGGER.info("execl导出流关闭");
				  } catch (IOException e) {
					 LOGGER.error(e.getMessage());		
				  }
			}
	  }

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值