位置:首頁 > 軟件操作教程 > 編程開發(fā) > C# > 問題詳情

C# 用 XPath 搜索 XML

提問人:劉團(tuán)圓發(fā)布時間:2020-12-10

    XPath是XML文檔的查詢語言,就像SQL是關(guān)系數(shù)據(jù)庫的查詢語言一樣。它由表21-7中的兩個方法使用,以免遍歷XML文檔的整個樹。但是需要花一定的時間才能熟悉它,因?yàn)槠湔Z法與SQL或C#完全不同。

    為正確使用XPath,下面要使用XML文件Elements.xml。該文檔包含元素周期表中的部分化學(xué)元素。這個XML文件的部分內(nèi)容列在稍后的“選擇節(jié)點(diǎn)”示例中,其完整內(nèi)容可以在本書網(wǎng)站的本章下載代碼Elements.xmi中找到。

    下表列出了 XPath執(zhí)行的最常見操作。如果未特別說明,XPath查詢示例就根據(jù)它操作的節(jié)點(diǎn)來選擇。在必須有一個節(jié)點(diǎn)名稱的地方,可以假定當(dāng)前節(jié)點(diǎn)是XML文檔中節(jié)點(diǎn)。

XPath查詢示例

選擇當(dāng)前節(jié)點(diǎn)

  .

選擇當(dāng)前節(jié)點(diǎn)的父節(jié)點(diǎn)

  ..

選擇當(dāng)前節(jié)點(diǎn)的所有子節(jié)點(diǎn)

*

選擇具有特定名稱的所有子節(jié)點(diǎn),這里是title

Title

選擇當(dāng)前節(jié)點(diǎn)的一個特性

@Type

選擇當(dāng)前節(jié)點(diǎn)的所有特性

  @*

按照索引選擇一個子節(jié)點(diǎn),這里是第二個元素節(jié)點(diǎn)

element[2]

選擇當(dāng)前節(jié)點(diǎn)的所有文本節(jié)點(diǎn)

text()

選擇當(dāng)前節(jié)點(diǎn)的一個或多個孫子節(jié)點(diǎn)

element/text()

在文檔中選擇具有特定名稱的所有節(jié)點(diǎn),這里是所有的mass節(jié)點(diǎn)

//mass

在文檔中選擇具有特定名稱和特定父節(jié)點(diǎn)名稱的所有節(jié)點(diǎn),在這里父節(jié)點(diǎn)名稱是element,節(jié)點(diǎn)名稱是name

//clement/name

選擇值滿足條件的節(jié)點(diǎn),這里選擇元素名為Hydrogen的元素

//element[name='Hydrogen']

擇特性值滿足條件的節(jié)點(diǎn),在此.Type特性的值迪Noble Gas

//element[@Type=*Noble Gas']


繼續(xù)查找其他問題的答案?

相關(guān)視頻回答
回復(fù)(0)
返回頂部