- - PR -
指定ノードの要素の更新について
投稿者 | 投稿内容 | ||||||||
---|---|---|---|---|---|---|---|---|---|
|
投稿日時: 2004-11-08 09:47
脳味噌筋肉です。
の時点で「型System.Xml.XmlNodeListの値をSystem.Xml.XmlNodeに変換できません」 と叱られます。 なので、〜NodeListでやってみたもののうまくいかず・・。 難しいですね(^^; | ||||||||
|
投稿日時: 2004-11-08 10:49
こんにちは。
すいません、訂正です。慌てて書いて間違ってしましました。申し訳ない。 あるリストの中から1つの要素を取得するときはXmlNodeを(例えば HogeChild のID が"1" のgrandchildノードを取得したいなら変数A:XmlNodeには"孫1"が格納される)、またリスト の中から要素のリストを取得したいならXmlNodeListを使用します(同じく変数A:XmlNodeListには"孫1"から"孫5"が格納される)。 Dim AAA As XmlNode AAA = xmldoc.SelectSingleNode("HogeRoot/HogeChild[ID=1]/grandchild") Dim AAA As XmlNodeList AAA = xmldoc.SelectNodes("HogeRoot/HogeChild[ID=1]/grandchild") これでお願いします。 [ メッセージ編集済み 編集者: とっと 編集日時 2004-11-08 10:58 ] | ||||||||
|
投稿日時: 2004-11-08 10:59
レスありがとうございます。
勉強させて頂きます。 その後、以下のコードで試してみたところ
結果は <HogeRoot> <HogeChild ID="1">孫新1</HogeChild> </HogeRoot> もうちょっとで・・ゴールが(^^; | ||||||||
|
投稿日時: 2004-11-08 11:01
こんにちは。
前のレス訂正しました。 | ||||||||
|
投稿日時: 2004-11-08 11:30
以下のコードだと
結果は <HogeChild ID="1"> <grandchild>孫新1</grandchild> <grandchild>孫1</grandchild> </HogeChild> うーん(^^; | ||||||||
|
投稿日時: 2004-11-08 11:34
脳味噌筋肉です。
諦めてファイル操作(文字列変換)で対応することにしました。 いろいろとご助言ありがとうございました。m(_)m | ||||||||
|
投稿日時: 2004-11-08 11:47
こんにちは。
Dim List As XmlNodeList = xDoc.SelectNodes(xPathString) ここで、ノードのリストを取得しているにも関わらず、 Dim replaceNode As XmlElement = xDoc.CreateElement("grandchild") で新たな要素を追加し、それを更新しているからだと思います。 その前の投稿で <HogeRoot> <HogeChild ID="1">孫新1</HogeChild> </HogeRoot> もうちょっとで・・ゴールが(^^; できてたんじゃ・・・ | ||||||||
|
投稿日時: 2004-11-08 11:54
とっとさん、お世話になってます。
望みは <HogeRoot> <HogeChild ID="1"> 孫新1 </HogeChild> </HogeRoot> ではなくて <HogeRoot> <HogeChild ID="1"> <GroundChild>孫新1</GroundChild> </HogeChild> </HogeRoot> の形だったのです。 お騒がせしました(((^^; |