我正在尝试解析api调用返回的JSON数据。 Value的部分可能有双qutoes,表示以英寸为单位的项目大小。 示例:“description”:“size is 7”x 8“...”(我已截断字符串。)
json.net在解析该值时抛出异常。 我是Json的诺布,在C#上有些生疏。 我无法弄清楚如何解决这个问题。
这是我正在使用的代码。我正在清理任何html标签并设置以下设置参数。我已经研究了很多但谷歌没有帮助,因为使用像json escap parse等单词返回太多结果。
string value = WebUtility.HtmlDecode(reader.ReadToEnd());
value = Regex.Replace(value, "<.+?>", string.Empty);
JsonSerializerSettings set = new JsonSerializerSettings();
set.StringEscapeHandling = StringEscapeHandling.Default;
set.StringEscapeHandling = StringEscapeHandling.EscapeHtml;
set.StringEscapeHandling = StringEscapeHandling.EscapeNonAscii;
myo = JsonConvert.DeserializeObject<myboject>(value,set);
答案 0 :(得分:0)
只是做:
yourJsonString = yourJsonString.Replace("\"", "\\u022");
object o = JSonConvert.Deserialize(yourJsonString);
请记住,\ u022是双引号的ascii代码。因此,您的浏览器将识别替换\ u022的引号。
并在“\ u022”中使用\来使c#识别反斜杠字符。
干杯