- ベストアンサー
VB2005でXMLデータをParserを使って項目を抽出する方法
- VB2005の初心者がXMLデータをパーサーを使用して特定の項目を抽出し、DBに登録したいです。パーサーの機能を使用してタグ名で項目を検索する方法はあるのでしょうか?
- VB2005の初心者がXMLデータをパーサーを使って特定の項目を抽出し、DBに登録したいです。msxmldocにLoadした後、タグ名で検索して項目を抽出する方法を教えてください。
- VB2005の初心者ですが、XMLデータをパーサーを使って特定の項目を抽出し、DBに登録したいです。msxmlDoc.Loadxmlを使用してデータをロードした後、タグ名で検索して項目を抽出する方法を教えてください。
- みんなの回答 (1)
- 専門家の回答
質問者が選んだベストアンサー
'Microsoft XML v6.0を参照に追加 Public Class Q3474337 Shared Sub Main Dim msxmlDoc As MSXML2.DOMDocument Dim fugaElements As MSXML2.IXMLDOMNodeList '.NET系の言語ではUTF-8ベースで動くと思っていたのだが 'たとえShift_JISとなっていても正しく表示されるようだ。 'ただ,内部サブセットで各要素を定義するDOCTYPE宣言があると駄目っぽい '外部サブセットは知らん。 Dim strFullText As String = "<?xml version=""1.0"" encoding=""UTF-8"" ?><hoge xmlns=""fugahoge""><fuga>あ</fuga><fuga>い</fuga><gura>う</gura></hoge>" msxmlDoc = New MSXML2.DOMDocument msxmlDoc.Loadxml(strFullText) 'XMLを扱うときの毎度お馴染みのメソッドgetElementsByTagNameですね。 '名前空間を特に指定しなくても動いてしまう '何故かgetElementByIdメソッドがメンバリストに現れない fugaElements = msxmlDoc.getElementsByTagName("fuga") For Each fuga As MSXML2.IXMLDOMNode In fugaElements System.Console.WriteLine(fuga.text) Next 'コンソールへの出力内容は 'あ 'い Stop End Sub End Class
お礼
遅くなりましたが、返答ありがとうございました。 教えていただいた getElementsByTagName というメソッドを初めて知りました。(初心者なので・・・) 本当にありがとうございました。