- - PR -
指定した個所からのXML読み込み
1
投稿者 | 投稿内容 |
---|---|
|
投稿日時: 2008-05-06 19:25
XMLファイルを読み込み,バッファなどに蓄積しておき,
ノードを指定して,指定したノード以下の内容を処理していく プログラムをVBで作成したいと思います. 即座に指定したノードの場所まで移動し,処理を行いたいのです. XPathNavigatorクラスのMoveToメソッドを使用すれば, 指定したノードに移動し,そこから以下のノードについて 処理をしていくことができるのではないかと思っているのですが, その場合ですと,指定するノードのリストに合わせて 事前に対応するXPathNavigatorをすべて用意しておく必要があるのかなと 思いまして,それでは冗長かなと悩んでいます. ----- Dim docNav As XPathDocument = New XPathDocument("XMLのファイルパス") Dim nav As XPathNavigator = docNav.CreateNavigator nav.MoveTo("予め設定した別のXPathNavigator")←指定する予定のノードに対してすべて用意する必要がある. ----- XMLファイルを読み込み,バッファなどに蓄積しておき, ノードを指定して,指定したノード以下の内容を処理していけるような プログラムについて,どのようなクラスやメソッドを使ったらよいのでしょうか. 教えていただきたくおもいます. よろしくお願いします. |
|
投稿日時: 2008-05-06 21:15
たとえばDOMでやるとか。
|
|
投稿日時: 2008-05-06 21:27
Anthyhimeさん,返信ありがとうございます.
DOMというと,XmlDocumentになるんでしょうか? たしかに,指定したノードについては取得できそうなんですが.. たとえば,下のようなXMLがあったとします. <test> <test1>aaaa</test1> <test2>bbbb</test2> <test3>cccc</test3> </test> このとき, GetElementsByTagName(test1)を指定することによって, <test1>aaaa</test1>の内容は取得できるかと思います. やりたいこととしては,test1を指定したら, そのあとのtest2,test3まで取得したいんです. つまり,指定したノードから,XMLの最後の要素までです. 伝わりにくい文章ですみません. |
|
投稿日時: 2008-05-06 21:53
子要素の列挙なら、XPathNavigator.Select や XmlDocument.SelectNodes を使えばいいんじゃないですか。
|
|
投稿日時: 2008-05-09 23:02
Hongliangさん,返信ありがとうございます.
こちらの返信が遅くなってしまいすみません. XmlDocument.SelectNodesとループを組み合わせて, 無事目的のことを行うことができました. ご意見をいただきまして,ありがとうございました. |
1