XML 如何删除一个指定的节点呢

bg4rhm 2008-09-09 03:35:55
<Root>
<Abc>
<Bcd>
<A>33</A>
<B>ss</B>
</Bcd>
<AAA>
<SD>33</SD>
</AAA>
</Abc>
</Root>
如何指定删除 //Root//Abc//Bcd
即结果为:
<Root>
<Abc>
<AAA>
<SD>33</SD>
</AAA>
</Abc>
</Root>
...全文
104 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
baihe_591 2008-09-09
  • 打赏
  • 举报
回复

private void toolStripMenuItem2_Click(object sender, EventArgs e)
{
XmlDocument doc = new XmlDocument();
doc.Load("XMLFile1.xml");
try
{
selectNodes(doc.ChildNodes);
doc .Save ("XMLFile1.xml");

}
catch (Exception ex)
{
MessageBox.Show(ex.Message);
}
}
private void selectNodes(XmlNodeList nodes)
{
foreach (XmlNode node in nodes)
{
if (node.Name == "Bcd")//"Foot/Abc/Bcd"
{
node.ParentNode.RemoveChild(node);
}
if (node.ChildNodes.Count >= 0)
selectNodes(node.ChildNodes);
}
}
  • 打赏
  • 举报
回复
XmlDocument doc = new XmlDocument();
doc.LoadXml("<Root><Abc><Bcd><A>33 </A><B>ss </B></Bcd><AAA><SD>33 </SD></AAA></Abc></Root>");
XmlNode root = doc.DocumentElement;
XmlNodeList list = root.SelectNodes( "descendant::Abc/Bcd" );
foreach( XmlNode node in list )
{
XmlNode parent = node.ParentNode;
parent.RemoveChild( node );
}
西安风影 2008-09-09
  • 打赏
  • 举报
回复
using System.Xml;
public partial class _Default : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
XmlDocument doc = new XmlDocument();
doc.Load(Server.MapPath("data.xml"));
XmlNode book = doc.SelectSingleNode ( "//Root/Abc/Bcd" );
book.ParentNode.RemoveChild(book)
doc.Save ( Server.MapPath ( "data.xml" ) );
}
}
sinoknight 2008-09-09
  • 打赏
  • 举报
回复
找到这个node //Root//Abc//Bcd , 然后用node.ParentNode.RemoveChild(node)来删除,就是先找到这个node的parent,再删除它,嘿嘿
CNLAN 2008-09-09
  • 打赏
  • 举报
回复

System.Xml.Linq.XDocument doc = System.Xml.Linq.XDocument.Load("file.xml");
var query = from e in doc.Element("Root").Elements("Abc").Elements("Bcd")
select e;
foreach(XElement xe in query)
{
xe.Remove();
}
hanyu0528 2008-09-09
  • 打赏
  • 举报
回复
关注中,XML节点删除,偶也想知道,顶

110,549

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧