我正在用dom4j解析一个xml文件。该文件如下所示:
<bug>
<bug_id>1232131<bug_id>
<long_desc isprivate="0">
<who name="Alan John">alanjohn@whatever.com</who>
<thetext>asdasdasdsadasdasdasd
asdasdad
adasd
adinadasbdk
asdasdad</thetext>
</long_desc>
<long_desc isprivate="0">
<who name="Bob Dan">bdan@whatever.com</who>
<thetext>asdasdasdsadasdasdasd
asdasdadads
adasdojojjtjghjthnjthntjhnjthn
adinadasbdk
asdasdad</thetext>
</long_desc>
</bug>在一个错误标记中有多个long_desc,在xml文件中也有多个错误标记。
我使用dom4j打印内容,但是失败了,下面是我的代码。
File f = new File("c:/Users/ah/bugs01.xml");
SAXReader reader = new SAXReader();
Document doc = reader.read(f);
Element root = doc.getRootElement();
Element foo;
for (Iterator i = root.elementIterator("bug"); i.hasNext();) {
foo = (Element) i.next();
System.out.println("Text" + foo.elementText("thetext"));
} 但是对于每个println,我都得到了null。为什么?我是dom4j新手,我希望有人能帮我解决这个问题。非常感谢
发布于 2013-10-18 23:43:12
您的XML无效:
<thetext>asdasdasdsadasdasdasd
asdasdadads
adasdojojjtjghjthnjthntjhnjthn
adinadasbdk
asdasdad</text>具有不同的开始(<thetext>)和结束(</text>)标记。另外,thetext是long_desc的孩子,而不是bug的孩子。
https://stackoverflow.com/questions/19453575
复制相似问题