Newtosoft.Json 错误 JSON 转义序列:\v。
Newtosoft.Json Bad JSON escape sequence: \v.
我正在使用 Newtosoft.Json 来解析 JSON,这在 C# 中很正常:)
不幸的是,我得到了一个 json 字符串来解析:
{"data": {"str_1": "' \u001e\v \u0003\u001f"\u0003\u001d %\b)\v#"}}
调用 JObject.Parse(aboveLine)
给我一个错误
Bad JSON escape sequence: \v. Path 'data.str_1', line 1, position [number].
\v
是竖线的符号。
有什么方法可以毫无例外地解析以上 json?
使用 \u000B
(垂直制表符)代替 \v
,您将获得有效的 JSON。
\v is a sign for vertical line
\u007C
为竖线|
我检查了规范,发现“\v”是有效的 JSON。此处提供规范:https://www.json.com/json-object#object-with-strings
我也检查了源代码,它不支持'\v'。这就是我创建拉取请求的原因,我希望将其合并到 Newtonsoft.Json: https://github.com/JamesNK/Newtonsoft.Json/pull/489
更新
对我来说不幸的是 http://json.com is WRONG and \v
is not a valid backlash char in JSON. The RFC 4627 指定了所有这些而 \v
不在其中:(
我在 http://json.com
上添加了对此的评论
更新 2
我在我的博客上详细描述了这个故事。如果您有兴趣,请查看:http://stapp.space/bad-json-escape-sequence-v/
我正在使用 Newtosoft.Json 来解析 JSON,这在 C# 中很正常:)
不幸的是,我得到了一个 json 字符串来解析:
{"data": {"str_1": "' \u001e\v \u0003\u001f"\u0003\u001d %\b)\v#"}}
调用 JObject.Parse(aboveLine)
给我一个错误
Bad JSON escape sequence: \v. Path 'data.str_1', line 1, position [number].
\v
是竖线的符号。
有什么方法可以毫无例外地解析以上 json?
使用 \u000B
(垂直制表符)代替 \v
,您将获得有效的 JSON。
\v is a sign for vertical line
\u007C
为竖线|
我检查了规范,发现“\v”是有效的 JSON。此处提供规范:https://www.json.com/json-object#object-with-strings
我也检查了源代码,它不支持'\v'。这就是我创建拉取请求的原因,我希望将其合并到 Newtonsoft.Json: https://github.com/JamesNK/Newtonsoft.Json/pull/489
更新
对我来说不幸的是 http://json.com is WRONG and \v
is not a valid backlash char in JSON. The RFC 4627 指定了所有这些而 \v
不在其中:(
我在 http://json.com
更新 2
我在我的博客上详细描述了这个故事。如果您有兴趣,请查看:http://stapp.space/bad-json-escape-sequence-v/