c# - 反序列化时无效的 JSON 原语

标签 c# json

好的,所以当我尝试运行我的应用程序时遇到这个问题:

Invalid JSON primitive: .

public static void ReloadConfig()
{
    if (!File.Exists("config.cfg"))
    {
        StringBuilder sb = new StringBuilder();

        sb.Append("{\r\n");
        sb.Append("\"Admins\":[76561198214617172],\r\n");
        sb.Append("\"Chatty\":false,\r\n");
        sb.Append("}");

        File.WriteAllText("config.cfg", sb.ToString());
    }
    try
    {
        JavaScriptSerializer jss = new JavaScriptSerializer();
        config = jss.Deserialize<Roles>(File.ReadAllText("config.cfg"));
    }
    catch (Exception e)
    {
        Console.WriteLine(e.Message);
        Console.ReadKey();
        ReloadConfig();
    }
}

这是生成配置时的样子:

{
"Admins":[76561198214617172],
"Chatty":false,
}

根据我的错误消息,我假设它说我的配置中有一个空间,但我没有。

如果这很重要,我会使用 System.Web.Script.Serialization

最佳答案

false 之后的输出中有一个错误的逗号:

{
"Admins":[76561198214617172],
"Chatty":false,
}

应该是:

{
"Admins":[76561198214617172],
"Chatty":false
}

关于c# - 反序列化时无效的 JSON 原语,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29943492/

相关文章:

c# - 我们可以将对象数据源控件分配给数据集吗?

c# - 使用 2 个 Get 方法重载 WebAPI Controller

c# - 平面数据的层次结构

Java EE 7 Webapp - 将 tika-parsers 升级到 1.11 后 REST-Services(json) 出现问题

javascript - 每个 jQuery - 每 X 秒?

c# - 自定义 JSON.net 反序列化为 Dictionary<string, string>

c# - 在 C# 中,这称为什么类型的接口(interface)实现

c# - 具有通用类型和继承的复杂模型

ajax - 如何返回带有错误消息的 json

javascript - 特别是当我们必须在 2 个日期之间选择数据时,以下哪个 JSON 更适合使用?