美文网首页
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