gpt4 book ai didi

c# - 从 XDocument 中删除节点

转载 作者:数据小太阳 更新时间:2023-10-29 01:42:42 24 4
gpt4 key购买 nike

这会从文档中删除所有元素:

        XDocument document = XDocument.Load(inputFile);
foreach (XElement element in document.Elements())
{
element.Remove();
}
document.Save(outputFile);

这没有任何效果:

        XDocument document = XDocument.Load(inputFile);
foreach (XElement element in document.Elements())
{
//element.Remove();
foreach (XElement child in element.Elements())
child.Remove();
}
document.Save(outputFile);

我是不是漏掉了什么?由于这些都是对 XDocument 中元素的引用,更改是否应该生效?有没有其他方法可以从 XDocument 中删除嵌套的子项?

谢谢!

最佳答案

显然,当您遍历 element.Elements() 时,对其中一个子项调用 Remove() 会导致枚举器yield break。迭代 element.Elements().ToList() 解决了这个问题。

关于c# - 从 XDocument 中删除节点,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3215470/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com