2015-10-18 38 views
0

我有記錄這樣的XML Element對象:的Java XPath的獲取和更新屬性值

<DIMENSION NAME="Depth_Inches" SRC_TYPE="INTERNAL"> 
    <DIMENSION_ID ID="5013678"/> 
    <DIMENSION_NODE> 
     <DVAL TYPE="EXACT"> 
     <DVAL_ID ID="5013678"/> 
     <SYN CLASSIFY="FALSE" DISPLAY="TRUE" SEARCH="FALSE">Depth_Inches</SYN> 
     <PROP NAME="display_name"> 
      <PVAL>Dryer Depth (Inches)</PVAL> 
     </PROP> 
     </DVAL> 
     <DIMENSION_NODE> 
     <DVAL TYPE="RANGE"> 
      <DVAL_ID ID="5013679"/> 
      <SYN CLASSIFY="TRUE" DISPLAY="TRUE" SEARCH="TRUE">0 - 14.9999</SYN> 
      <LBOUND> 
      <BOUND CLOSURE="CLOSED" TYPE="FLOAT" VALUE="0 "/> 
      </LBOUND> 
      <UBOUND> 
      <BOUND CLOSURE="CLOSED" TYPE="FLOAT" VALUE=" 14.9999"/> 
      </UBOUND> 
      <PROP NAME="DISPLAY_ORDER"> 
      <PVAL>6</PVAL> 
      </PROP> 
     </DVAL> 
     </DIMENSION_NODE> 
     <DIMENSION_NODE> 
     <DVAL TYPE="RANGE"> 
      <DVAL_ID ID="5013680"/> 
      <SYN CLASSIFY="TRUE" DISPLAY="TRUE" SEARCH="TRUE"> 15 - 25.9999</SYN> 
      <LBOUND> 
      <BOUND CLOSURE="CLOSED" TYPE="FLOAT" VALUE=" 15 "/> 
      </LBOUND> 
      <UBOUND> 
      <BOUND CLOSURE="CLOSED" TYPE="FLOAT" VALUE=" 25.9999"/> 
      </UBOUND> 
      <PROP NAME="DISPLAY_ORDER"> 
      <PVAL>5</PVAL> 
      </PROP> 
     </DVAL> 
     </DIMENSION_NODE> 
    </DIMENSION_NODE> 
    </DIMENSION> 

我想要得到的DVAL_ID的屬性ID的值(例 - 5013679)作爲一個字符串,打印和將其更新爲新的身份證號碼(比如12345)。我如何在XPath中執行此操作。這裏也有類似的問題,但沒有一個解決屬性值並更新它們。任何幫助表示讚賞。

+1

我試過使用setNodeValue,但我無法想出一個準確的XPath表達式。因此獲得Element對象的空值。 @Tunaki – subhatt

回答

0

以下是如何獲取所有ID值。

//DVAL_ID/@ID