首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Newtosoft.Json错误的JSON转义序列:\v。

问Newtosoft.Json错误的JSON转义序列:\v。
EN

Stack Overflow用户
提问于 2015-02-19 21:40:44
回答 2查看 13.4K关注 0票数 3

我使用Newtosoft.Json来解析JSON,这在C#中是很正常的:)

不幸的是,我得到了一个如下所示的json字符串来解析:

代码语言:javascript
复制
{"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?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2015-02-20 02:04:52

我检查了规范,发现'\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是错误的,\v在JSON中不是一个有效的反冲字符。RFC 4627指定了所有这些参数,而\v不在其中:(我在http://json.com上添加了关于这一点的评论

更新2

我在我的博客上详细描述了这个故事。如果您感兴趣,请查看:http://stapp.space/bad-json-escape-sequence-v/

票数 2
EN

Stack Overflow用户

发布于 2015-02-19 21:54:44

使用\u000B (垂直制表符)代替\v,您将拥有一个有效的JSON。

\v是垂直线的符号

\u007C为垂直线|

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/28607899

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档