Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/310.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 如何将“\”替换为“”或空?_C#_String_Replace - Fatal编程技术网

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;