gpt4 book ai didi

c# - 禁用对读取(无效的 JSON)单引号字符串的支持

转载 作者:太空狗 更新时间:2023-10-29 19:58:01 25 4
gpt4 key购买 nike

适用于 C# 的 Newtonsoft.Json 支持读取诸如 {'key':'value'} 之类的内容,但那是不正确的 JSON。是否可以禁用它以便它解析和读取更像 PHP(PHP 不支持 {'key':'value'} 但支持 {"key":"value"})

最佳答案

您可以编写自己的 JsonReader 子类来执行此操作,但是 JsonTextReader 类(据我所知,这是最常用的)没有'支持这个。来自ParseValue方法,例如:

case '"':
case '\'':
ParseString(currentChar, ReadType.Read);
return true;

我有一个 strict JSON tokenizer在 Google.Protobuf 中 - 它是内部的,但应该让您知道自己编写这样的分词器并不难。当然,如果您真的想使用 Json.NET,除了严格之外,这对您没有帮助。

您可能想阅读并可能对 issue 646 进行投票/评论在 Json.NET 存储库中,我也在那里请求了“严格模式”。 (那里也有一个建议的替代方法 - 尽管感觉有点像 hack。)

关于c# - 禁用对读取(无效的 JSON)单引号字符串的支持,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48236247/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com