请解释使用java读取XML文件时使用的代码的以下行的含义。
NodeList lastNameList = firstPersonElement.getElementsByTagName("last");
long NameElement = (long)lastNameList.item(0).getTextContent();
getTextContent()
的用途是什么,item(0)
是什么用途?
答案 0 :(得分:1)
NodeList lastNameList = firstPersonElement.getElementsByTagName("last");
在firstPersonElement
下找到名为last
的所有后代元素(子元素,孙子元素等),并按文档顺序将它们返回为NodeList
。
lastNameList.item(0)
将是该列表中的第一个元素(将其视为数组索引,因此item(0)
是列表中的第一个节点,item(1)
是第二个节点,等等。和
lastNameList.item(0).getTextContent()
将是 String (不是long
)值,其中包含此last
元素下所有后代文本节点的串联。所以你的代码不应该编译,因为它不可能从String
转换为long
。
答案 1 :(得分:0)
您只需检查正在解析的xml文件即可。应该有像
这样的东西
<last>textdata</last>
致电getTextContent()
您正在访问textdata
,通过致电item(0)
,您将获得具有此类名称的第一个可访问标记。
答案 2 :(得分:0)
NodeList旨在存储Nodes的有序集合。由于里面有多个项目,通过调用item(0)
,您可以从此集合中获取第一个项目(Node
)(索引从零开始)。通过调用getTextContent,您将获得此节点及其后代的文本内容。