我有一个XMLDocument文档,如下:
<Folder name="test">
<Folder name="test2">
<File>TestFile</File>
</Folder>
</Folder>
我只想要文件夹,不需要文件。那么,如何在c#中删除/操作XML文档以删除/移除文档中的所有元素?
谢谢!
XDocument
和 LINQ,那么您就可以做到。XDocument doc = XDocument.Load(filename) // or XDocument.Parse(string)
doc.Root.Descendants().Where(e => e.Name == "File").Remove();
--编辑了一个错误
XMLDocument
中删除节点(有关从XDocument
中删除节点的方法,请参见Jens的答案)XmlDocument doc = XmlDocument.Load(filename); // or XmlDocument.LoadXml(string)
XmlNodeList nodes = doc.SelectNodes("//file");
foreach(XmlNode node in nodes) {
node.ParentNode.RemoveChild(node);
}
如果node.ParentNode为空,请注意可能出现空指针异常。