继续浏览精彩内容
慕课网APP
程序员的梦工厂
打开
继续
感谢您的支持,我会继续努力的
赞赏金额会直接到老师账户
将二维码发送给自己后长按识别
微信支付
支付宝支付

使用ITEXT创建word表格

随缘清风
关注TA
已关注
手记 15
粉丝 8
获赞 218

最近在写新项目,其中遇到了比较好玩的要求,就是要把统计功能中的图表和表格导出去。在选择用什么方案解决问题 ,使用了POI导出EXCEL,导出的图表看起来不好看,背景有方格就弃用了,最后敲定了用ITEXT框架来写。使用Itext的jar分别是:com.lowagie.itext.2.1.7和com.lowagie.itext-rtf.2.1.7。

/**
* word创建表单
*@param tableDatas真实数据集合
*@param columns标题
*@param imagePath文件地址
*@param wordFileName 文档名字
*/
public String itextCreateTable(List tableDatas,String[] columns ,String wordFileName){
booleanbool =true;
try{
//把文件放到桌面上
File desktopDir = FileSystemView.getFileSystemView().getHomeDirectory();
String desktopPath = desktopDir.getAbsolutePath();
Document document =newDocument(PageSize.A4.rotate());
RtfWriter2.getInstance(document, newFileOutputStream(desktopPath+"\\"+wordFileName+".doc"));
document.open();
//创建多个表格
Table aTable =newTable(columns.length);
for(String s:columns) {
//把表格上方的标题创建出来
aTable.addCell(newCell(s));
}
//把数据填写到表格中,只要够了表格数量会自动换行
for(TableData tableData : tableDatas){
aTable.addCell(newCell(tableData.getKey()));
for(String number:tableData.getValue()) {
aTable.addCell(newCell(number));
}
}
document.add(aTable);
document.add(newParagraph("\n"));
document.close();
}catch(Exception e) {
bool =false;
e.printStackTrace();
}
if(bool){
return"导出成功(在桌面)";
}else{
return"请关闭word文档,再重新导出";
}
}

tableDatas={"总投资(万元)",[ 1,2,3,4,5,6,7,8,9]}
columns = ["项目类别", "实施方案", "规划环评","大纲+报告书","仅大纲","报告书","报告表","补充报告","补充报告书","补充报告表"]
这两个数据都是在页面处理传到后台
图片描述

打开App,阅读手记
4人推荐
发表评论
随时随地看视频慕课网APP

热门评论

你这只是部分代码吧?能否把全码给出下,最近也在做相关项目。thanks

查看全部评论