C# 删除xml元素名称中的空格

C# 删除xml元素名称中的空格,c#,xml,C#,Xml,我有一些格式错误的xml,它在元素名中包含一个空格,因此在尝试使用它时使xml无效。如何使用C#删除空格?在下面的示例中,我想更改为 范例 <Root> <Test Element> </Test Element> </Root> 使用 String.Replace(“,”) 用无空格替换空白记事本++的TextFX和XML工具插件可以做到这一点,还有更多。在编辑时,您有时可能需要编写巧妙的搜索词。这并不能真正解决您的问题,但您

我有一些格式错误的xml,它在元素名中包含一个空格,因此在尝试使用它时使xml无效。如何使用C#删除空格?在下面的示例中,我想更改为

范例

<Root>
    <Test Element>
    </Test Element>
</Root>

使用

String.Replace(“,”)


用无空格替换空白

记事本++的TextFX和XML工具插件可以做到这一点,还有更多。在编辑时,您有时可能需要编写巧妙的搜索词。

这并不能真正解决您的问题,但您从何处得到如此令人厌恶的XML文件?如果您自己生成XML,或使用组织中的代码生成XML,则同意,我建议在创建xml时进行修复,而不是在创建之后进行修复。不幸的是,xml是预先存在的,我必须按原样对其进行操作,但是的,它应该被修复。但是,我使用XmlSerializer将xml序列化为对象。在我将xml传递给XmlSerializer进程之前,是否有任何方法来修复它。我可以重命名元素吗?我不想使用字符串替换或正则表达式。@User1334589,基本上任何XML解析器/读取器都会对您的“XML”产生问题。如果您被迫“吃”这样一个糟糕的“XML”,那么最好、最简单的方法就是在将其输入XML处理器之前,使用字符串/正则表达式替换来清理它。对于如此严重违反XML的情况,您将无法得到一个像“免费午餐”一样简单和便宜的解决方案,不幸的是……只能使用字符串参数,而不能使用字符。没有什么比空字符更好的了。像.Replace(“,”)一样使用Regex Replace来修复坏的xml,现在与XmlSerializer一起使用可以正常工作。