XMLの取得方法について

解決


へなちょこ  2006-09-07 04:14:57  No: 96529

VS2005です。
現在XMLReaderで読み込み1行ずつ処理をしています。
        'ファイルが存在する場合はインスタンスを作成
        reader = New XmlTextReader(strXmlPath)
        Dim xmlTblNode As XmlNode

        'XMLから指定idのラベル表示名を取得して、画面のラベルに設定
        Do While (reader.Read())
            If reader.NodeType = XmlNodeType.Element Then
                If reader.HasAttributes Then
                    'XMLの値を取得
                    reader.MoveToAttribute("id")
                    strId = reader.Value
                    reader.MoveToAttribute("name")
                    strNm = reader.Value

省略していますが上記のようにしています。
しかし、IDに{1,2,3,4,5,6}とあったとして
1行ずつ処理しなくてSQL分で WHERE ID = 5 のように
指定したデータが取得したいのですがどうすればいいのでしょうか?
どうかご教示願います。


Hongliang  URL  2006-09-07 07:48:26  No: 96530

XmlReader を使う限り、要素を一つずつ読んでいくのは仕方ないでしょう。
XmlDocument に一気に読み込んで XPath で検索するという手はありますが。
更に SQL となると…… XLinq


Hongliang  URL  2006-09-07 07:50:07  No: 96531

って途中送信 orz

XLinq って今どうなってるんだろう、と思いつつ。

Access とかにインポートしてとか言う事になるのかな。できるかどうか知らないけど。


へなちょこ  2006-09-07 19:05:27  No: 96532

返信ありがとうございます。

XmlDocument.Xpathみたいなので解決できるんですね。
早速Helpみながら試してみます。


へなちょこ  2006-09-08 02:10:18  No: 96533

XPathでクエリを書くことで解決できました。
ありがとうございました。


※返信する前に利用規約をご確認ください。

※Google reCAPTCHA認証からCloudflare Turnstile認証へ変更しました。






  このエントリーをはてなブックマークに追加