使用freemarker生成word文档,源代码+jar包+说明文档及注意事项

上传者: lun379292733 | 上传时间: 2021-07-04 10:10:54 | 文件大小: 5.14MB | 文件类型: ZIP
使用freemarker生成word ,并集成struts2 同时生成及下载文档 资料附有Java源代码和自己总结的使用说明及注意事项 大至预览如下: 1、用word编辑好模板 普通字符串替换为 ${string} 表格循环用标签 姓名:${user.userName} , 性别:${user.sex} 2、将word模板另存为xml格式 3、将xml模板文件后缀名改为.ftl 4、编辑ftl文件 注意 编辑word模板时,${string} 标签最好是手动一次性输入完毕,或者使用记事本统一将整个${string}编辑好之后,粘贴至word里边。 也就是说,不要在word里首先打完 ${ } 之后,又从其它地方把 string 字符串粘贴至 { } 之间,这样在 word 转化为 xml时,解析会有问题,freemarker解析时,会报错。 /** * @Desc:生成word文件 * @Author:张轮 * @Date:2014-1-22下午05:33:42 * @param dataMap word中需要展示的动态数据,用map集合来保存 * @param templateName word模板名称,例如:test.ftl * @param filePath 文件生成的目标路径,例如:D:/wordFile/ * @param fileName 生成的文件名称,例如:test.doc */ @SuppressWarnings("unchecked") public static void createWord(Map dataMap,String templateName,String filePath,String fileName){ try { //创建配置实例 Configuration configuration = new Configuration(); //设置编码 configuration.setDefaultEncoding("UTF-8"); //ftl模板文件统一放至 com.lun.template 包下面 configuration.setClassForTemplateLoading(WordUtil.class,"/com/lun/template/"); //获取模板 Template template = configuration.getTemplate(templateName); //输出文件 File outFile = new File(filePath+File.separator+fileName); //如果输出目标文件夹不存在,则创建 if (!outFile.getParentFile().exists()){ outFile.getParentFile().mkdirs(); } //将模板和数据模型合并生成文件 Writer out = new BufferedWriter(new OutputStreamWriter(new FileOutputStream(outFile),"UTF-8")); //生成文件 template.process(dataMap, out); //关闭流 out.flush(); out.close(); } catch (Exception e) { e.printStackTrace(); } }

文件下载

资源详情

[{"title":"( 3 个子文件 5.14MB ) 使用freemarker生成word文档,源代码+jar包+说明文档及注意事项","children":[{"title":"使用freemarker生成word","children":[{"title":"createWord_Java源代码.zip <span style='color:#111;'> 4.79MB </span>","children":null,"spread":false},{"title":"使用freemarker生成word说明.docx <span style='color:#111;'> 407.38KB </span>","children":null,"spread":false},{"title":"word原型","children":[{"title":"news.docx <span style='color:#111;'> 14.12KB </span>","children":null,"spread":false}],"spread":true}],"spread":true}],"spread":true}]

评论信息

  • o_neself :
    非常好,可以使用
    2020-03-04
  • jinfeng0315 :
    客户的环境是liunix的,项目开始只考虑了window环境,谢谢楼主的分享,解决了我的燃眉之急
    2018-07-11
  • sj497494151 :
    很好用,帮了我大忙。刚好及时完成项目功能。
    2018-06-19
  • u012988177 :
    非常好,很有用
    2017-11-15
  • mygod999 :
    这个帮忙做了不少系统,非常感谢!
    2016-12-26

免责申明

【只为小站】的资源来自网友分享,仅供学习研究,请务必在下载后24小时内给予删除,不得用于其他任何用途,否则后果自负。基于互联网的特殊性,【只为小站】 无法对用户传输的作品、信息、内容的权属或合法性、合规性、真实性、科学性、完整权、有效性等进行实质审查;无论 【只为小站】 经营者是否已进行审查,用户均应自行承担因其传输的作品、信息、内容而可能或已经产生的侵权或权属纠纷等法律责任。
本站所有资源不代表本站的观点或立场,基于网友分享,根据中国法律《信息网络传播权保护条例》第二十二条之规定,若资源存在侵权或相关问题请联系本站客服人员,zhiweidada#qq.com,请把#换成@,本站将给予最大的支持与配合,做到及时反馈和处理。关于更多版权及免责申明参见 版权及免责申明