我正在研究一个Android应用程序并通过使用dom4j将xml解析为String来获得一个非常奇怪的问题。
Android API是2.1和Dom4j 1.6.1
名称为xml的变量已经从Web源代码中获取,我可以更改xml结构。它看起来像这样:
<?xml version="1.0" encoding="UTF-8"?>
<results count="1">
<result id="123">
<a>this is a</a>
<b>this is b</b>
</result>
</results>
这是我的java代码:
doc = saxReader.read(new StringReader(xml));
Log.i("show xml",xml);
Log.i("show doc",doc.getDocument().asXML());
第一个Log.i显示完整的正确xml代码:
<results count="1"> <result id="123"> <a>this is a</a> <b>this is b</b> </result> </results>
但第二个Log.i给出了这样的结果
<results count="1"> <result count="123"> <a>this is a</a> <b>this is b</b> </result> </results>
我可以将所有元素和属性解析为“count”而没有任何问题。但为什么dom4j将属性“id”更改为“count”? 有没有解决方案?