C# 如何将“\”替换为“”或空?
我想用C# 如何将“\”替换为“”或空?,c#,string,replace,C#,String,Replace,我想用 XmlReader.Create(aString); 读取XML。但是,此aString中有许多\会导致错误: 路径中存在非法字符 因此,我想将所有\替换为 我试过: aString.Replace("\", ""); aString.Replace("\\", ""); aString.Replace(@"\", ""); aString.Replace(@"\", string.Empty); 它们都不起作用。您可能没有捕获输出-替换不会修改现有字符串-它返回一个新字符串。尝试:
XmlReader.Create(aString);
读取XML。但是,此aString中有许多\会导致错误:
路径中存在非法字符
因此,我想将所有\替换为
我试过:
aString.Replace("\", "");
aString.Replace("\\", "");
aString.Replace(@"\", "");
aString.Replace(@"\", string.Empty);
它们都不起作用。您可能没有捕获输出-替换不会修改现有字符串-它返回一个新字符串。尝试:
aString = aString.Replace(@"\","");
您没有分配String.Replace方法的输出。
Replace方法不会修改对象。我看到您的代码中有\个。VisualStudio就是这样显示的。\是转义字符,而不是实际字符。aString中的数据正确,没有理由尝试从aString中删除\。问题在于您如何使用aString,而不是aString内部 请注意:XmlReader.CreateaString;从路径读取XML文件。
XmlDocument.LoadXmlstring解析XML文件 我已经编辑了你的标题。请看,如果共识是否定的,他们就不应该这样。你确定反斜杠真的存在吗?如果是这样的话,你不应该先做一些划一的脱身动作,而不仅仅是反斜杠吗?还请注意,您当前忽略了Replace的返回值,这是行不通的。如果你能给我们提供更多的背景,我们很可能会提出一个更好的选择。出了什么问题?是否为aString.Replace\\,;赋值,;回到阿斯特林?你怎么会在一开始就得到一根形状不好的绳子?也许更好的修复方法是上游。@\和\\都应该可以工作。这是我在查看操作后立即想到的。这是我在代码中使用的不起作用的东西:string aString=model.wresult.ToString;aString=aString.替换@\,;XmlReader=XmlReader.CreateaString;你的输入字符串是什么?您确定\字符是唯一的非法字符吗?这是我在代码中使用的,但不起作用:string aString=model.wresult.ToString;aString=aString.替换@\,;XmlReader=XmlReader.CreateaString;