2011-10-13 28 views
0

私は希望のノードを選択するXPath技術を使ってdom4jを使ってXMLを読んでいます。私のXMLは次のようになります:dom4J:ノードの要素の値を取得するには?

<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 
} 

は今、どのように私は、現在選択されているノードの名前と年齢を得るのですか? はどのような方法は、その最初の「名前」サブ要素とその最初の「年齢」サブ要素の要素を依頼し、そのテキストを取得、Elementnode.getElementValue("name");

答えて

3

キャスト各ノードが存在しています。

http://dom4j.sourceforge.net/apidocs/org/dom4j/Element.htmlを参照してください。

elementText(String)のメソッドは、名前でサブ要素を取得し、そのテキストを一度の操作で取得することができますが、文書化されていないため、言い難いです。

変数とメソッドは、Javaでは常に小文字で始まることに注意してください。

関連する問題