美文网首页
java根据模板导出word

java根据模板导出word

作者: 邪恶的康康 | 来源:发表于2017-04-19 16:42 被阅读0次

    参考http://blog.csdn.net/y_love_f/article/details/41595647

    1、首先制作模板

    • 新建word文档,如图所示:


      1.png

    文件另存为XML文件,XML文件重命名为ftl。若出现格式字符${name}被断开的情况,可选中该格式字符,清除格式之后再保存为XML文件。

    循环处理:

    模板中明细表中的数据是一个集合,我们需要循环遍历才能够将数据全部注入,这个时候我们就会用到了FreeMarker本身的语法了。
    循环:

    <#list array as bean>
      ${bean.property}
    </#list>
    

    代码放在表格的开头和结尾,也即是将表格中的标签包括在循环里面,并表格中的字符 ${number} 替换为${bean.number},这样子就可以了。<#list array as bean><w:tr ……>…${bean.number}…</w:tr></#list>

    2、准备数据

    • 将上面模板中的${}的标签放上对应的数据
      首先要将freemarker的jar包放到程序中,然后将上面制作好的模板放到程序中;


      clipboard.png

      4、总结

      对于图片固定的情况,可以不用替换xml文件中的图片部分,生成word时会自动转换为原图片显示。如果图片是不固定的,那么可以用${image}(或其他字符)替换,然后在代码生成word时填充base64码。

    相关文章

      网友评论

          本文标题:java根据模板导出word

          本文链接:https://www.haomeiwen.com/subject/myrhzttx.html