我正在使用dom4j读取XML,使用XPath技术来选择所需的节点。考虑一下我的XML看起来像这样:
<Employees>
<Emp id=1>
<name>jame</name>
<age>12</age>
</Emp>
.
.
.
</Employees>
现在我需要将所有员工的信息存储在我的员工类列表中。直到我编码以下内容:
List<? extends Node> lstprmntEmps = document.selectNodes("//Employees/Emp");
ArrayList<Employee> Employees = new ArrayList<Employee>();//Employee is my custom class
for (Node node : lstprmntEmps)
{
Employees.add(ParseEmployee(node));//ParseEmployee(. . .) is my custom function that pareses emp XML and return Employee object
}
现在我如何获得当前所选节点的名称和年龄?
是否存在任何此类方法node.getElementValue("name");
答案 0 :(得分:3)
将每个节点转换为Element
,然后向元素询问其第一个“name”子元素及其第一个“age”子元素并获取其文本。
请参阅http://dom4j.sourceforge.net/apidocs/org/dom4j/Element.html。
elementText(String)
的{{1}}方法可能会按名称获取子元素并在一次操作中检索其文本,但它没有文档记录,因此很难说。
请注意,变量和方法应始终以Java中的小写字母开头。