好吧,当我尝试运行我的应用程序时出现此问题:
无效的JSON原语:。
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
。
答案 0 :(得分:11)
false
之后输出中有错误的逗号:
{
"Admins":[76561198214617172],
"Chatty":false,
}
应该是:
{
"Admins":[76561198214617172],
"Chatty":false
}
答案 1 :(得分:4)
您需要在false后删除逗号:
{
"Admins":[76561198214617172],
"Chatty":false
}
我使用JSONLint来验证您的JSON,还有许多其他在线JSON验证器。