List<LeadInfo> leadInfoList = leadInfoMapper.downloadExcel(requestContext, leadInfo, page, pagesize); String result = "Excel文件导出成功!"; // 列名称 String[] Title = new String[] { "订单号", "状态代码", "原因代码", "事件时间", "备注", "地点"}; // 以下开始输出到EXCEL try { // 定义输出流,以便打开保存对话框______________________begin OutputStream opStream = response.getOutputStream();// 获得输出流 response.reset();// 清除输出流 // 设定输出文件头 response.setHeader("Content-disposition", "attachment; filename=" + new String("event.xls".getBytes("GB2312"), "ISO8859-1")); response.setContentType("application/msexcel");// 定义输出类型 // 定义输出流,以便打开保存对话框______________________end /************* 设置时间格式 *************/ SimpleDateFormat df = new SimpleDateFormat("yyyy-MM-dd"); /** **********创建工作簿************ */ WritableWorkbook workbook = Workbook.createWorkbook(opStream); /** **********创建工作表************ */ WritableSheet sheet = workbook.createSheet("Sheet1", 0); /** **********设置纵横打印(默认为纵打)、打印纸***************** */ jxl.SheetSettings sheetset = sheet.getSettings(); sheetset.setOrientation(PageOrientation.LANDSCAPE); sheetset.setProtected(false); /** ************设置单元格字体************** */ WritableFont NormalFont = new WritableFont(WritableFont.ARIAL, 10); WritableFont BoldFont = new WritableFont(WritableFont.ARIAL, 10, WritableFont.BOLD); DisplayFormat dFormat = NumberFormats.TEXT; /** ************以下设置三种单元格样式,灵活备用************ */ // 用于标题居中 WritableCellFormat wcf_center = new WritableCellFormat(BoldFont, dFormat); wcf_center.setBorder(Border.ALL, BorderLineStyle.THIN); // 线条 wcf_center.setVerticalAlignment(VerticalAlignment.CENTRE); // 文字垂直对齐 wcf_center.setAlignment(Alignment.CENTRE); // 文字水平对齐 wcf_center.setWrap(false); // 文字是否换行 // 用于正文居左 WritableCellFormat wcf_left = new WritableCellFormat(NormalFont, dFormat); wcf_left.setBorder(Border.NONE, BorderLineStyle.THIN); // 线条 wcf_left.setVerticalAlignment(VerticalAlignment.CENTRE); // 文字垂直对齐 wcf_left.setAlignment(Alignment.CENTRE); // 文字水平对齐 wcf_left.setWrap(false); // 文字是否换行 /** ***************以下是EXCEL开头大标题,暂时省略********************* */ // sheet.mergeCells(0, 0, colWidth, 0); // sheet.addCell(new Label(0, 0, "XX报表", wcf_center)); /** ***************以下是EXCEL第一行列标题********************* */ for (int i = 0; i < Title.length; i++) { sheet.addCell(new Label(i, 0, Title[i], wcf_center)); } /** ***************以下是EXCEL正文数据********************* */ int i = 1; for (LeadInfo leadInfo1 : leadInfoList) { sheet.addCell(new Label(0, i, "", wcf_left)); sheet.addCell(new Label(1, i, "", wcf_left)); sheet.addCell(new Label(2, i, "", wcf_left)); sheet.addCell(new Label(3, i, "", wcf_left)); sheet.addCell(new Label(4, i, "", wcf_left)); sheet.addCell(new Label(5, i, "", wcf_left)); i++; } /** **********将以上缓存中的内容写到EXCEL文件中******** */ workbook.write(); /** *********关闭文件************* */ workbook.close(); } catch (Exception e) { result = "系统提示:excel导出失败,原因:" + e.toString(); System.out.println(e.toString()); e.printStackTrace(); } return result;
Java导出Excel
最新推荐文章于 2024-12-27 17:45:46 发布