日期:2014-05-18  浏览次数:20821 次

请问如何删除xml的一个节点,但是保留她的子节点
<a>
  <b>
  <b1>222</b1>
  <b2>333</b2>
  </b>
</a>
怎么把<a></a>删掉
使得文件成为
<b>
  <b1>222</b1>
  <b2>333</b2>
</b>


------解决方案--------------------
string strxml = "<c><a><b><b1> 222 </b1><b2> 333</b2></b></a></c> ";
XmlDocument doc = new XmlDocument();
doc.LoadXml(strxml);
XmlNode node = doc.SelectSingleNode("//a");
XmlNode parent = node.ParentNode;
XmlNode nodetemp = node.Clone();
parent.RemoveChild(node);
foreach( XmlNode childenode in nodetemp.ChildNodes)
{
parent.AppendChild(childenode);
}
doc.Save("1.xml");
------解决方案--------------------
同意1楼
------解决方案--------------------
先把节点的子节点读出来,然后把节点删除,再把子节点保存进去
------解决方案--------------------
只能如此了
------解决方案--------------------
不错,又学习了