freemaker导出word

来源:互联网 发布:股票数据实时抓取 编辑:程序博客网 时间:2024/05/21 17:25
1.先用word导出word2003xml格式的文档

2.使用firstobject打开
当然,你也可以用notepad++,editplus,sublime+XML格式化插件打开,firstobject这个工具好在自带XML格式化
把firstobject XML editor 调成tab缩进模式(具体 工具--偏好--制表符)

先做好模板调好样式
firstobject打开 F8缩进

3.修改内容
1).替换使用${}标记,这个最简单
动态多行定义list
<#list table1 as ep>
</#list>

2).判断非空使用
<#if ep.equipment??>
<w:vmerge w:val="restart"/>
<#else>
<w:vmerge/>
</#if>

3).合并多行使用
第一行标记
<w:vmerge w:val="restart"/>
后续行标记
<w:vmerge/>

<w:vmerge/>的位置/w:wordDocument/w:body/w:tbl/w:tr[4]/w:tc/w:tcPr/w:vmerge

4).合并多列使用
<w:gridSpan w:val="6"/> 合并6列

5).一些记号
表开始<w:tbl>
行开始<w:tr wsp:rsidR="00EF0A91" wsp:rsidRPr="00FB252F" wsp:rsidTr="007975FF">
列开始<w:tc>
文字内容<w:t></w:t>

6).特殊文字需转义
本段参考:http://www.yshjava.cn/post/333.html FreeMarker模板输出转义html
String html = "8888</title><body><script type='text/javascript'>alert(\"跨站脚本\");</script>";html = html.replace("'", "'");//替换单引号html = html.replaceAll("&", "&");//替换&html = html.replace("\"", """); // 替换双引号html = html.replace("\t", "  ");// 替换跳格html = html.replace(" ", " ");// 替换空格html = html.replace("<", "<");//替换左尖括号html = html.replaceAll(">", ">");//替换右尖括号



0 0
原创粉丝点击