freemaker转word xml注意事项
java类字符串变量如果含有以下2种字符: &和 <,必须转义否则转化将失败。
其中:
&替换成 &
<替换成 <
因为一些怪字符数据库存储时已转义了,从数据读取必须先转义,然后再进行替换。
下面是五个在XML文件中预定义好的实体:
< < 小于号
> > 大于号
& & 和
' ’单引号
" " 双引号
注意: 只有"<" 字符和"&"字符对于XML来说是严格禁止使用的。剩下的都是合法的,为了减少出错,使用实体是个好习惯。
转义函数: 对变量进行转义。
public String formatString(Object obj){
String str="";
if(obj!=null){str= obj.toString();};
if(!StringUtils.isBlank(str)){
String escaped = org.apache.commons.lang.StringEscapeUtils.unescapeHtml(str);
if(escaped.indexOf("&")>=0){
escaped = escaped.replace("&", "&");
}
else if(escaped.indexOf("<")>=0){
escaped = escaped.replace("<", "<");
}
return escaped;
}else{
return " ";
}
}
用法:
i = 1;
for (MonographVo vo : monographVos) { String monographname = formatString(vo.getMonographname());
dataMap.put("b8a" + i,monographname);
String publisher = formatString(vo.getPublisher());
dataMap.put("b8b" + i,publisher);
String yearandpage=formatString(vo.getYearandpage());
dataMap.put("b8c" + i,yearandpage);
String allauthor=formatString(vo.getAllauthor());
dataMap.put("b8d" + i,allauthor); ++i;
}
freemaker转word xml注意事项的更多相关文章
- Freemaker基于word模板动态导出汇总整理
Freemaker基于word模板动态导出汇总整理 一.使用的jar包: 二.Word模板动态导出的基本思路: 1.首先通过自己在word中创建好需要导出的word文本+表格的模板,模板中需要填写内容 ...
- Freemaker基于word模板动态导出压缩文件汇总整理
Freemaker基于word模板动态导出压缩文件汇总整理 Freemaker基于word模板动态导出单个文件思路和代码详情见连接: https://www.cnblogs.com/lsy-blogs ...
- 使用freemaker 导出word 含多张图片,若无图片则显示文本信息
1.使用的Microsoft Office 2007,添加一个无边框的表格,并插入一张图片,最后另存为编码utf-8,一开始保存的word xml格式的,图片的base64编码位于文档最后,暂时没有找 ...
- 雷林鹏分享:XML 注意事项
XML 注意事项 这里列出了您在使用 XML 时应该尽量避免使用的技术. Internet Explorer - XML 数据岛 它是什么?XML 数据岛是嵌入到 HTML 页面中的 XML 数据. ...
- OpenXml读取word内容注意事项
OpenXml读取word内容注意事项 1.使用OpenXml读取word内容,word后缀必须是".docx":如果word后缀是".doc"需要转成&quo ...
- java 根据word xml模板生成word
这里用的是poi相关jar包以及freemarker插值技术实现,poi相关jar包这里不再述说 1,编辑word并保存为xml 2,把xml后缀改为ftl文件 3,前端代码 // alert(jso ...
- word xml 各个标签含义
@参考文章 <w:p> <!--表示一个段落--> <w:val > <!--表示一个值--> <w:r> <!--表示一个样式串,指 ...
- java word另存为word xml格式
1.jacob-1.15-M3-x86.dll copy到c:\\windows\system32 2.引入jacob.jar 把jacob.dll(不同版本的jacob的dll文件名有所不同)复制到 ...
- 【word xml】将word转化为xml格式后,如何在xml中卫word添加分页符
1.首先在xml中找到我们需要添加分页符的位置 例如:我需要在这个第一部分上面添加一个分页符 2.找到这个[第一部分]这个位置之后,开始往上找,找到对应的位置 3.在</w:pPr>下方添 ...
随机推荐
- java 哪些情况下会使对象锁释放
Java_多线程_锁释放 问:Java多线程运行环境中,在哪些情况下会使对象锁释放?答:由于等待一个锁的线程只有在获得这把锁之后,才能恢复运行,所以让持有锁的线程在不再需要锁的时候及时释放锁是很重要的 ...
- Axure 注册码
用户名:axureuser 序列号:8wFfIX7a8hHq6yAy6T8zCz5R0NBKeVxo9IKu+kgKh79FL6IyPD6lK7G6+tqEV4LG
- css3:target页内跳转
:target 用于选取当前活动的目标元素 <!DOCTYPE html> <html> <head lang="en"> <meta c ...
- c语言中argc和argv是什么意思?
argc是参数个数,定义为intargv是字符串数组,存的是参数,定义为char**或者char* argv[]比如你编译好的程序为my.exe在命令行执行 my.exe 1 2 3那argc就是4, ...
- Highcharts AJAX JSON JQuery 实现动态数据交互显示图表 柱形图
http://my.oschina.net/xshuai/blog/345117?fromerr=hEXYMdR0 http://www.oschina.net/code/snippet_144464 ...
- weblogic11g 节点管理器 nodemanager
Weblogic 节点管理器 nodemanager 一.Weblogic 规划 : Server名称 端口 ip 备注 xyyadmin 7001 10.10.54.74 管理server ap ...
- BroadcastService的测试用例
程序运行起来之后,需要用多个telnet客户端来进行测试 连接的命令为conn deviceNumber 广播命令为broa message 需要注意的是:示例代码有bug, broadcastDic ...
- 《OD学hive》第五周0723
https://cwiki.apache.org/confluence/display/Hive/LanguageManual 一.创建表 create table student(id int, n ...
- pl/sql programming 05 循环迭代处理
使用循环应考虑的因素 1. 循环什么时候结束 2. 什么时候测试是否该结束循环 3. 采用这种循环的原因 1. 普通循环(简单循环) 使用场合, 不能确定循环执行多少次, 要求循环至少执行一次. 另外 ...
- hdu4422The Little Girl who Picks Mushrooms
4422 小于等于3 的时候就是1024 4的时候 讨论 5的时候讨论 注意重量为0的情况 #include <iostream> #include<cstdio> #incl ...