当前位置: 代码迷 >> XML/SOAP >> 大吓关于DOM4J解析XML的有关问题
  详细解决方案

大吓关于DOM4J解析XML的有关问题

热度:360   发布时间:2012-02-20 21:18:24.0
请教各位大吓关于DOM4J解析XML的问题
最近用DOM4J解析XML时发现了一个问题,就是当我用Document.asXML()转换字符串时,会自动把XML内的一些标签进行更改。代码如下:
SAXReader reader = new SAXReader();
reader.setEncoding("GBK");
try {
Document doc = reader.read(new FileReader("C:/863202_682578254405_01_20110418154720876119.xml"));
System.out.println(doc.asXML());
  }catch(Exception e){
e.printStackTrace();
}

正常输出应该是:
<?xml version="1.0" encoding="GBK"?>
<DATASETS>
  <CONTROL>
  <OPERATOR>001</OPERATOR>
  <REQUESTCOM></REQUESTCOM>......
</DATASETS>
现在输出的则是:
<?xml version="1.0" encoding="GBK"?>
<DATASETS>
  <CONTROL>
  <OPERATOR>001</OPERATOR>
  <REQUESTCOM/>......
</DATASETS>



请走过路过的各位大吓帮我看看怎么解决这个问题吧。

------解决方案--------------------
你确实需要那种格式的话,可以加上格式设置
OutputFormat format = OutputFormat.createPrettyPrint();
format.setExpandEmptyElements(true);
  相关解决方案