首页 > 解决方案 > 从 json 响应字符串中删除所有出现的“\”不起作用

问题描述

我有一个字符串对象,如下所示。

string mycontent = "\"The time is Valid\"\n"
string tocompare = "The time is Valid"

mycontent 的内容由以下代码行分配。

string mycontent = await response.Content.ReadAsStringAsync();

我希望能够删除所有这些\n\并且要做到这一点,我会执行以下操作。

mycontent.Trim().Replace(@"\","")

我正在尝试比较mycontentandtocompare是否相等。但这不起作用。

if (string.Compare(tocompare, mycontent.Trim().Replace(@"\","")) == 0)
{
     //TODO
}

由于某种我不知道的原因,我无法看到等于0

我在这里错过了什么吗?任何帮助表示赞赏。

标签: c#jsonxamarin.forms

解决方案


您显示的字符串中没有实际的斜杠字符。源代码中的斜杠是字符串文字语法的一部分,其中\"仅表示字符"(需要对其进行转义以将其与字符串末尾区分开来),而\n表示换行符。

如果您想从字符串的两侧删除引号和换行符,您也可以这样做Trim

mycontent.Trim('"', '\n')

但这有点奇怪。如果此字符串实际上代表您想要的文本的某种序列化格式,例如 JSON 或 CSV,则应使用解析器来代替。你在哪里得到它?


推荐阅读