VB.NET, C#, PowerShellを使用しているエンジニアのためのサイト。
基本的な使用方法から開発で役立つTipsまで幅広く取り扱っています。
検索式を指定してノードを取得するにはナビゲータのEvaluateメソッドを使用します。
ナビゲータのEvaluateメソッドで取得したノードリストはXPathNodeIteratorクラスとして取得し、XPathNodeIteratorが持つCountプロパティで件数を取得します。
//XPathドキュメントを作成 System.Xml.XPath.XPathDocument xmlDoc = new System.Xml.XPath.XPathDocument(@"C:\Work\Test.xml"); //ナビゲータを作成 System.Xml.XPath.XPathNavigator xNavi = xmlDoc.CreateNavigator(); //検索式を指定して、ヒットしたノードをiteに格納 System.Xml.XPath.XPathNodeIterator ite = (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>