不知何故,解析的 XML 文件似乎是错误的,还是我做错了什么?
<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
<root>
<quests>
<quest id="test">
<question>Just a little sentence.</question>
</quest>
</quests>
</root>
我是这样解析的:
File file = new File("file.xml");
DocumentBuilderFactory dF = DocumentBuilderFactory.newInstance();
dF.setNamespaceAware(true);
DocumentBuilder dB = dF.newDocumentBuilder();
Document XML = dB.parse(file);
// ------------------------------------------
Element doc = XML.getDocumentElement();
System.out.println(doc.getChildNodes());
Element dx = (Element) doc.getElementsByTagName("quest").item(0);
System.out.println(dx.getAttribute("id"));
System.out.println(dx.getAttribute("id").length());
System.out.println(dx.getAttributes().getLength());
这就是我得到的:
[root: null]
0
0
怎么会这样呢?如何解析元素/标签/节点的属性?
最佳答案
奇怪的是,我刚刚复制粘贴了你的代码,这就是我得到的输出
[root: null]
test
4
1
我认为错误的是你应该做 doc.getTagName()
但这只是次要的......
java 版本“1.6.0_21”
关于Java:已解析 XML,但缺少一些内容,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4444439/