如何在c#中删除json字符串中的第一和最后双引号

本文关键字:最后 字符串 删除 json | 更新日期: 2023-09-27 18:18:01

我想在json字符串中删除第一个和最后一个双引号。

"[{'"CircleID'":1,'"CircleName'":'"Andhra Pradesh'"},{'"CircleID'":4,'"CircleName'":'"Assam'"},{'"CircleID'":5,'"CircleName'":'"Bihar'"},{'"CircleID'":6,'"CircleName'":'"Chennai'"},{'"CircleID'":7,'"CircleName'":'"Delhi'"},{'"CircleID'":8,'"CircleName'":'"Gujarat'"},{'"CircleID'":9,'"CircleName'":'"Himachal Pradesh'"},{'"CircleID'":10,'"CircleName'":'"Haryana'"},{'"CircleID'":17,'"CircleName'":'"Mumbai'"},{'"CircleID'":26,'"CircleName'":'"Jharkhand'"},{'"CircleID'":27,'"CircleName'":'"Chhattisgarh'"}]"

在上面的json字符串我想删除第一个和最后一个双引号。如何去除。我试过了,但没有用。我使用字符串。replace方法,string.trim()方法,但不删除引号。

如何在c#中删除json字符串中的第一和最后双引号

您可以使用String。不要忘记将结果赋值给字符串变量。c#中的字符串是不可变的,我们需要将改变后的值赋给变量。

jsonStr = jsonStr.Trim( '"' );

如果你有多个字符,你可以使用重载String.Trim(Char[])

jsonStr = jsonStr.Trim( new Char[] { '"' } );

Edit在OP中字符串的开头和结尾只有一个双引号但是如果我们在开头和结尾有多个双引号并且我们只想删除第一个和最后一个那么我们可以使用string.Substring

jsonStr = jsonStr.Substring(1, jsonStr.Length-2);

我假设"'"实际上在字符串中,而不是在源代码中嵌入该字符串或在调试器中显示它的工件。

在这种情况下,您不希望只是删除初始和末尾的",但您需要将其视为json字符串并对其进行解码。这也将用字符串内的普通"替换编码的'"

如果你使用Newtonsoft Json:

decodedString = JsonConvert.DeserializeObject<string>(jsonString);

这是对我的帮助。

        responseContent = responseContent.Substring(1, responseContent.Length - 1);
        responseContent = responseContent.Substring(0, responseContent.Length - 1);