HIRO's.NET

VB.NET, C#, PowerShell Tipsサイト

 VB.NET, C#, PowerShellを使用しているエンジニアのためのサイト。

 基本的な使用方法から開発で役立つTipsまで幅広く取り扱っています。

HIRO's.NET RSSHIRO's.NET RSS


VB.NET 2005の開発でお困りのことはありませんか?
そんな悩みは当サイトで解決!!

HOME > VB.NET 2005 Tips > XML Tips メニュー> XPath Tips メニュー

05.検索式で合計値を求める

UPDATE:2006/07/31 

<< 前のTips  次のTips >>

 


 検索式で合計値を求めるにはナビゲータのEvaluateメソッドを使用します。サンプルではEvaluateの引数にsum(//personal_data/age/text())を指定して、年齢(age)の合計値を求めています。

 
サンプル1
'XPathドキュメントを作成
Dim xmlDoc As New System.Xml.XPath.XPathDocument("C:\Work\Test.xml")

'ナビゲータを作成
Dim xNavi As System.Xml.XPath.XPathNavigator = _
    xmlDoc.CreateNavigator()

'トータル年齢を計算してintSumに格納
Dim intSum = xNavi.Evaluate("sum(//personal_data/age/text())")

'結果を表示する
Console.WriteLine("トータル年齢は" & intSum & "歳です")


 
サンプル2
'サンプル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>
 

<< 前のTips  次のTips >>