2010-08-10 169 views
0

我有以下XML文檔:XPath查詢解析XML屬性文件

<!DOCTYPE properties SYSTEM "http://java.sun.com/dtd/properties.dtd"> 
<properties> 
    <comment>My Happy Configuration</comment> 
    <entry key="HappyKey">Happy Key</entry> 
    <entry key="SadKey">Sad Key</entry> 
    <entry key="AngryKey">Angry Key</entry> 
    <entry key="ConfusedKey">Confused Key</entry> 
    ... 
</properties> 

我執行下面的XPath查詢:

/properties/entry[@key='HappyKey'] 

我預計這回HappyKey,但它沒有返回。

+3

在什麼情況下,你使用這個XPath?你可以發佈使用它的代碼嗎? xpath表達式似乎是正確的 - 使用您的xml文檔[此處](http://chris.photobooks.com/xml/default.htm)進行測試。 – Oded 2010-08-10 20:51:30

+0

我從InstallBuilder的上下文中運行這個,直到明天我才能驗證這個,儘管 – Woot4Moo 2010-08-10 21:07:52

+0

@Oded,在你的頁面上有錯誤。 xml無法正確執行。你可能想要修復它。 – 2010-08-10 21:20:15

回答

2

如果你正在尋找的價值才嘗試:

/properties/entry[@key='HappyKey']/text() 
+1

XPath是一種託管語言。因此,要訪問'entry'元素的字符串值或者所有'entry'元素的子元素的文本節點的字符串值(這就是你的表達的意思)就是宿主語言的問題。 – 2010-08-10 22:49:11