【VB.NET】 XMLファイルを読込む

VB.NET
この記事は約5分で読めます。

XMLファイルを読込む

VB.NETでXMLファイルを読込む方法です。

サンプルxml

test.xml の内容

<?xml version="1.0" encoding="utf-8"?>
<xRoot>
  <xFruits id="くだもの">
    <xData id="1">
      <xCode>001</xCode>
      <xName>りんご</xName>
    </xData>
    <xData id="2">
      <xCode>002</xCode>
      <xName>みかん</xName>
    </xData>
    <xData id="3">
      <xCode>003</xCode>
      <xName>イチゴ</xName>
    </xData>
 </xFruits>
</xRoot>

サンプルコード

System.Xml をインポートする必要があります。

Imports System.Xml

Module Module1
    Sub Main()

        Dim xmlDoc As New XmlDocument()
        Dim xRoot As XmlElement
        Dim xnode As XmlNode
        Dim xnodeList As XmlNodeList

        'XMLファイルを読込
        xmlDoc.Load("C:\tmp\test.xml")

        'XMLドキュメントからルート要素を取り出す
        xRoot = xmlDoc.DocumentElement

        If xRoot IsNot Nothing Then
            Console.WriteLine(String.Format("xmlルート名 = {0}", xRoot.Name))
            Console.WriteLine(String.Format("xml = {0}", xRoot.InnerXml))
        Else
            Exit Sub
        End If

        '値を取得
        '取得したい場所のパスを`/`区切りで指定
        xnode = xmlDoc.DocumentElement.SelectSingleNode("xFruits/xData/xName")
        Dim str As String = If(Not xnode Is Nothing, xnode.InnerText, "")
        Console.WriteLine(str)

        '子要素の属性(id)を取得
        xnode = xmlDoc.DocumentElement.SelectSingleNode("xFruits/xData")
        Console.WriteLine(String.Format("id = {0}", xnode.SelectSingleNode("@id").Value))

        '要素をリストで取得
        xnodeList = xmlDoc.DocumentElement.SelectNodes("xFruits/xData/xName")
        Console.WriteLine(String.Format("要素数 = {0}", xnodeList.Count))

        For Each val As XmlNode In xnodeList
            Console.Write(String.Format("タグ名 = {0} :値 = {1}", val.Name, val.InnerText))
            Console.WriteLine()
        Next

    End Sub

End Module

実行結果

xmlルート名 = xRoot
xml = <xFruits id="くだもの"><xData id="1"><xCode>001</xCode><xName>りんご</xName></xData><xData id="2"><xCode>002</xCode><xName>みかん</xName></xData><xData id="3"><xCode>003</xCode><xName>イチゴ</xName></xData></xFruits>
りんご
id = 1
要素数 = 3
タグ名 = xName :値 = りんご
タグ名 = xName :値 = みかん
タグ名 = xName :値 = イチゴ
続行するには何かキーを押してください . . .

コメント

タイトルとURLをコピーしました