java导出Excel表格

@SuppressWarnings("unchecked")
	public String exportExcelMonthBase() {
		try {
			Struts2Utils.getResponse().setContentType(
					"application/vnd.ms-excel");
			//设置导出文件名
			String sj = tjTime.substring(0,4)+"年"+tjTime.substring(tjTime.length()-2)+"月";
			String fileName="测试";
			//文件名转码,这样写可以创建中文名称的*.xls
                       Struts2Utils.getResponse().setHeader("content-disposition",
					"attachment;filename="+ new String(fileName.getBytes("gb2312"), "ISO-8859-1") + ".xls");
                        //还可以直接这样写
                        //Struts2Utils.getResponse().setHeader("content-disposition",
			//		"attachment;filename="+ fileName + ".xls");
  OutputStream out = Struts2Utils.getResponse().getOutputStream();try {List<ReportJSP> list = this.tServiceQualityBaseService.findTServiceQualityBaseByStationOidAndTime(stationOid, tjTime);// 创建一个工作薄WritableWorkbook wwb = Workbook.createWorkbook(out);
//设置字体格式以及表格格式WritableFont font3 = new WritableFont(WritableFont.createFont("宋体_UTF-8"),12);// 设置字体为宋体,大小12号WritableCellFormat format3 = new WritableCellFormat(font3);//把字体格式放入表格格式中format3.setAlignment(jxl.format.Alignment.CENTRE);//设置表格内容水平居中format3.setVerticalAlignment(VerticalAlignment.CENTRE);//设置表格内容垂直居中format3.setWrap(true);//设置表格内容字体加粗// 创建一张工作表WritableSheet ws = wwb.createSheet("随便写", 0);ws.setColumnView(20, 15);//设置第21列列宽为15ws.setColumnView(21, 25);ws.setRowView(1, 500);//设置第2行行高500ws.setRowView(2, 500);ws.mergeCells(0, 0, 21, 0);//合并第1列第1行到第22列第1行ws.addCell(new Label(0, 0, fileName,format3));//0,0是表格位置,fileName是表格内容,format3是上面设置好的样式赋给要用这个样式的表格即可String[] titles = { "区域", "站点数", "应到报", "及时报", "逾限报", "到报率",
                        "缺报" };//表头
// 循环添加表头
                 for (int i = 0; i < titles.length; i++) {
                    ws.addCell(new Label(i, 1, titles[i]));
                 }
 // 循环添加内容
ReportJSP reportJSP = new ReportJSP();
 for (int i = 0; i < list.size(); i++) { reportJSP = listReportJSPs.get(i);
                    ws.addCell(new Label(0, i + 2, reportJSP.getTArea()
                            .getName()));
                    ws.addCell(new Label(1, i + 2, String.valueOf(reportJSP
                            .getStationNUM())));
                    ws.addCell(new Label(2, i + 2, String.valueOf(reportJSP
                            .getYdb())));
                    ws.addCell(new Label(3, i + 2, String.valueOf(reportJSP
                            .getJsb())));
                    ws.addCell(new Label(4, i + 2, String.valueOf(reportJSP
                            .getYxb() + reportJSP.getWdb())));
                    ws.addCell(new Label(5, i + 2, String.valueOf(reportJSP
                            .getDbl())));
                    ws.addCell(new Label(6, i + 2, String.valueOf(reportJSP
                            .getQb()), colorFormat));}wwb.write();wwb.close();} finally {out.close();}} catch (Exception ex) {System.out.println("excel创建失败" + ex);}return null;}


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

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值