VB.NET, C#, PowerShellを使用しているエンジニアのためのサイト。
基本的な使用方法から開発で役立つTipsまで幅広く取り扱っています。
検索式を指定してノードを取得するにはナビゲータのEvaluateメソッドを使用します。
ナビゲータのEvaluateメソッドで取得したノードリストはXPathNodeIteratorクラスとして取得し、XPathNodeIteratorが持つCountプロパティで件数を取得します。
'XPathドキュメントを作成 Dim xmlDoc As New System.Xml.XPath.XPathDocument("C:\Work\Test.xml") 'ナビゲータを作成 Dim xNavi As System.Xml.XPath.XPathNavigator = _ xmlDoc.CreateNavigator() '検索式を指定して、ヒットしたノードをiteに格納 Dim ite As System.Xml.XPath.XPathNodeIterator = _ xNavi.Evaluate("//personal_data[@id='ID00234']") '検索式でヒットしたノードの件数を取得する Console.WriteLine("選択したノードは" & ite.Count & "です")
'サンプル1で使用するXML <?xml version="1.0" encoding="utf-8"?> <address_list> <personal_data id="ID12345"> <zip>123-4567</zip> <address>東京都内</address> <name>HIRO</name> <age>34</age> </personal_data> <personal_data id="ID00234"> <zip>765-4321</zip> <address>アメリカ</address> <name>VB太郎</name> <age>28</age> </personal_data> <personal_data id="ID32401"> <zip>000-1111</zip> <address>東京都内</address> <name>C#花子</name> <age>40</age> </personal_data> </address_list>