Java Dom4j解析xml常见问题
Java Dom4j设置Xml encoding编码
Java Dom4j Element属性为Null时不显示
Java Dom4j Element标签非对称结束,Java Dom4j Element以“/”结束
================================
©Copyright 蕃薯耀 2019年1月11日
http://fanshuyao.iteye.com/
一、Java Dom4j设置Xml encoding编码
Document document = DocumentHelper.createDocument(); document.setXMLEncoding("GB2312"); …… …… String xml = document.asXML();
输出结果:
<?xml version="1.0" encoding="GB2312"?>
二、Java Dom4j Element属性为Null时不显示
<column name="proj_location"/>
<column name="proj_location" value=""/>
如上面所示:
都给columnElement设置了value的属性
columnElement.addAttribute("value", value);
但第一个的value属性没有显示,第二个显示。
这是因为当属性的值为Null时,属性值不显示,设置成空字符串("")则能显示出来。
示例代码:
Element columnElement = rootElement.addElement("column"); if(value == null){ value = "";//如果Attribute设置的属性的值为Null,默认是不显示该属性的,想要显示,当为Null时设置为空字符串显示该属性。 } columnElement.addAttribute("value", value);
三、Java Dom4j Element标签非对称结束,Java Dom4j Element以“/”结束
<column name="proj_location" value=""/>
<column name="proj_location" value=""></column>
如上面所示:
第一个以“/”结束:<a/>,当columnElement没有设置text值时或者Text值为Null时,以“/”结束,不对称
第二个是对称:<a></a>,当设置了text的值且不为Null时,Dom4j输出元素标签时是对称的。
Java Dom4j设置空字符串后元素标签对称输出示例代码:
Element columnElement = rootElement.addElement("column"); columnElement.setText("");//如果Element不设置Text或者Text值为Null时,生成的xml元素节点只是单个标签<a/>;设置空字符串或者有值,则是<a></a>
================================
©Copyright 蕃薯耀 2019年1月11日
http://fanshuyao.iteye.com/