2012-06-08 229 views
0

我有一個XML,如: -獲取XML節點的子元素值

<SkillMap> 
    <ExitPoint ID="01"> 
    <NodeName>abcd</NodeName> 
    </ExitPoint> 
    <ExitPoint ID="04"> 
    <NodeName>defg</NodeName> 
    </ExitPoint> 
    <ExitPoint ID="22"> 
    <NodeName>mnop</NodeName> 
    </ExitPoint> 
    </SkillMap> 

我試圖讓<ExitPoint>節點的基礎上,即如果我輸入ID值的值ID爲01應該給「abcd」,如果22應該給「mnop」等,但我沒有得到它,試了很多,請幫助。

感謝, 人工魚礁

+0

你,你應該使用XPath的那。 –

+0

到目前爲止你已經嘗試了什麼?你有沒有遇到任何問題? – sudmong

回答

1

可以使用Xpath做到這一點,可考慮從JAXP Specification 1.4採取下面的例子(我建議你爲這個諮詢):

// parse the XML as a W3C Document 
DocumentBuilder builder = DocumentBuilderFactory.newInstance().newDocumentBuilder(); 
org.w3c.Document document = builder.parse(new File("/widgets.xml")); 
// evaluate the XPath expression against the Document 
XPath xpath = XPathFactory.newInstance().newXPath(); 
String expression = "/widgets/widget[@name='a']/@quantity"; 
Double quantity = (Double) xpath.evaluate(expression, document, XPathConstants.NUMBER); 
+0

謝謝,但對於上述xml是否我要使用 'String expression =「/ ExitPoint/widget [@ name ='ID']/@ quantity」;' 或wat? – Ars

+0

我認爲,如果你閱讀我在答案中分享的材料,你最終將能夠發現自己。我認爲這是應該的。 –

+1

感謝edalorzo引用工作:) – Ars