DOBON.NET DOBON.NETプログラミング掲示板過去ログ

XML 削除操作

  • 題名: XML 削除操作
  • 著者: ぽぴー
  • 日時: 2005/06/10 10:36:13
  • ID: 11212
  • この記事の返信元:
    • (なし)
  • この記事への返信:
  • ツリーを表示
環境/言語:[WindowsXP]
分類:[ASP.NET]

はじめまして。
いつも拝見させていだいております。

VB.netでのXML操作について教えてほしいことがあります。

<abc>
<colors>
<color>green</color>
<ID>1</ID>
</colors>
<colors>
<color>blue</color>
<ID>2</ID>
</colors>
</abc>

上記のようなXML文書があります。
IDを指定して、2の場合なら、

<colors>
<color>blue</color>
<ID>2</ID>
</colors>

上記の部分を削除という操作をVB.netでしたいのですが、
どのようにすればいいのかわかりません。
ご教授宜しくお願い致します。
説明不足の点がございましたらご指摘ください。
■No11212に返信(ぽぴーさんの記事)

> <abc>
> <colors>
> <color>green</color>
> <ID>1</ID>
> </colors>
> <colors>
> <color>blue</color>
> <ID>2</ID>
> </colors>
> </abc>
>
> 上記のようなXML文書があります。
> IDを指定して、2の場合なら、
>
> <colors>
> <color>blue</color>
> <ID>2</ID>
> </colors>
>
> 上記の部分を削除という操作をVB.netでしたいのですが、


はじめまして。
XMLノードの削除はこのようなコードになりますので、参考にしてください。

Dim xmlfn As String = "xmlのパス"
Dim xd As New XmlDocument()
Dim atcl As XmlNode
Dim rt As XmlNode
xd.Load(xmlfn)
rt = xd.DocumentElement
atcl = rt.SelectSingleNode("descendant::user[ID='2']")
If IsNothing(atcl) Then
'エラー処理
End If
rt.RemoveChild(atcl)
xd.Save(xmlfn)
■No11217に返信(u1さんの記事)

> atcl = rt.SelectSingleNode("descendant::user[ID='2']")

すみません、ミスがありました。訂正します。
atcl = rt.SelectSingleNode("descendant::colors[ID='2']")
  • 題名: Re[3]: XML 削除操作
  • 著者: ぽぴー
  • 日時: 2005/06/14 9:44:26
  • ID: 11273
  • この記事の返信元:
  • この記事への返信:
    • (なし)
  • ツリーを表示
2005/06/14(Tue) 09:45:04 編集(投稿者)

u1さん、ありがとうございました。
期待どおりの結果を得ることが出来ました。
解決済み!

DOBON.NET | プログラミング道 | プログラミング掲示板