项目中新加的
public void createExcel(OutputStream os,List<TbReceiptDocument> docList)throws Exception{
WritableWorkbook wwb = Workbook.createWorkbook(os);
WritableSheet ws = wwb.createSheet("收文登记表", 0);
ws.mergeCells(0, 0, 5, 0);
WritableFont font1 = new WritableFont(WritableFont.TIMES, 16,
WritableFont.BOLD);
try{
WritableCellFormat format1 = new WritableCellFormat(font1);
format1.setAlignment(jxl.format.Alignment.CENTRE);
WritableCellFormat cellFormat = new WritableCellFormat();
cellFormat.setAlignment(jxl.format.Alignment.CENTRE);
cellFormat.setVerticalAlignment(jxl.format.VerticalAlignment.CENTRE);
cellFormat.setWrap(true);
// 文件字号 主办部室 文件标题 附件 接收列表 发文时间
//first row
Label l = new Label(0, 0, "收文登记表", format1);
ws.addCell(l);
// two row 标题
String[] titels={"收文序号", "收文日期", "文件字号", "来文单位", "文件标题", "公司领导指示" };
for(int i=0;i<titels.length;i++) {
l=new Label(i, 1, titels[i], cellFormat);
ws.addCell(l);
}
ws.setColumnView(0, 15);
ws.setColumnView(1, 20);
ws.setColumnView(2, 20);
ws.setColumnView(3, 20);
ws.setColumnView(4, 20);
ws.setColumnView(5, 20);
int j=0;
for(TbReceiptDocument docBean:docList){
Label labelA = null;
if(docBean.getSequenceNo()!=null){
labelA = new Label(0, j + 2,docBean.getSequenceNo().toString());
}
labelA.setCellFormat(cellFormat);
ws.addCell(labelA);
labelA = new Label(1, j + 2,docBean.getReceiptDtAsStr());
labelA.setCellFormat(cellFormat);
ws.addCell(labelA);
labelA = new Label(2, j + 2,docBean.getFileNo());
labelA.setCellFormat(cellFormat);
ws.addCell(labelA);
labelA = new Label(3, j + 2,docBean.getReceiptDeptIdStr());
labelA.setCellFormat(cellFormat);
ws.addCell(labelA);
labelA = new Label(4, j + 2,docBean.getFileTitle());
labelA.setCellFormat(cellFormat);
ws.addCell(labelA);
List<TbReceiptApproval> fileList=docBean.getComLeaderComments();
StringBuffer fileTile=new StringBuffer();
for(TbReceiptApproval ra:fileList){
fileTile.append(ra.getApprovalComment());
}
labelA = new Label(5, j + 2,fileTile.toString());
labelA.setCellFormat(cellFormat);
ws.addCell(labelA);
j++;
}
// 写入工作表
wwb.write();
wwb.close();
}catch(Exception e){
e.printStackTrace();
}
}
采用jsp调用:
<%@ page import="java.util.List" %>
<%@ page import="java.util.ArrayList" %>
<%@ page import="java.io.OutputStream" %>
<%@ page import="java.net.URLEncoder" %>
<%@ page import="com.timeson.oa.receiptdocument.web.ReceiptDocAction"%>
<html>
<body>
<%
response.reset();
response.setContentType("application/msexcel");
// response.setHeader("content-disposition", "attachment;filename=untitled.xls");//(1)
response.setHeader("Content-Disposition", "inline;filename=收文登记表.XLS");
// response.setHeader("Content-disposition","inline;filename=untitled.xls");//定义文件名(2)
OutputStream os = response.getOutputStream();
ReceiptDocAction doc = new ReceiptDocAction();
try
{
List list = (List) request.getAttribute("docList");
doc.createExcel(os, list);//把列表信息导入Excel
} catch(Exception e)
{
e.printStackTrace();
}
os.flush();
os.close();
out.clear();//(3)
out = pageContext.pushBody();//(4)
%>
</body>
</html>
分享到:
相关推荐
java Excel 导出 导入java Excel 导出 导入java Excel 导出 导入java Excel 导出 导入java Excel 导出 导入java Excel 导出 导入java Excel 导出 导入java Excel 导出 导入
java Excel导出 Excel数据处理
java excel导出数据
写的一个Excel导出测试示例;希望对你有所帮助
java excel导出demo,
需要使用JAVA 做EXCEL导出的同学,有问题尽管私信
java导出Excel 时候 相同行合并(可合并多列); 已测试通过;
javaExcel大数据导出百万数据优化导出javaExcel大数据导出百万数据优化导出
经典的java excel导出,自己总结的!!
该工具类实现java导出树形结构的方法,并未采用excel分组功能实现,而是根据树节点显示层级设置excel样式。针对easyUi,treeGrid开发的导出excel功能。方法简便实用、性强、通俗易懂。项目中亲测,no problem。
java实现excel批量导出功能的所有代买实现逻辑,及源码。适合初级、中级、高级程序员,用户一看就明白
java实现excel的导入导出(poi详解),经过测试poi效率要比jxl要高很多,特别是数据量大的时候jxl根本无法用肉眼入目,本资源是个可运行项目demo,很有参考价值!
用Java实现的Excel的导入导出,简洁明了,高质量代码。
java后台excel导出,集成的util代码包,实测可用
资源描述:一个使用java做的导出数据,并且可以在excel表生成折线图的工具类,使用简单操作方便。
概述:Java poi导入导出EXCEL工具类(兼容各版本) 一、功能说明 允许同时导入或导出多个sheet,同一sheet可同时存在多个数据块,按数据块划分处理数据。 二、配置文件示例及详细说明 1、导入xml配置示例如下(见...
java excel导出工具类 方便使用
java导出内容以及图片到execl中,由于客户的骚需求,不得不进行一些不情愿的开发。文档仅供思路参考。谢谢
java复杂模板excel导出例子
使用注解方式,在实体属性的get方法上添加注解,实现简单的excel表格导出功能