解析值时遇到意外字符
目前,我有一些问题。我在Json.NET中使用C#。问题是我总是得到:
{“解析值时遇到意外字符:e。路径”,第0行,位置0。”}
因此,我使用Json.NET的方式如下。我有一个班级,应该保存。该类如下所示:
public class stats{
public string time { get; set; }
public string value { get; set; }
}
public class ViewerStatsFormat
{
public List<stats> viewerstats { get; set; }
public String version { get; set; }
public ViewerStatsFormat(bool chk)
{
this.viewerstats = new List<stats>();
}
}
此类的一个对象将填充并保存为:
File.WriteAllText(tmpfile, JsonConvert.SerializeObject(current), Encoding.UTF8);
保存部分工作正常,文件存在并被填充。之后,将使用以下命令将文件读回到类中:
try {
ViewerStatsFormat current = JsonConvert.DeserializeObject<ViewerStatsFormat>(tmpfile);
//otherstuff
}
catch(Exception ex)
{
//error loging stuff
}
现在在current =行上出现异常:
{“解析值时遇到意外字符:e。路径”,第0行,位置0。”}
我不知道为什么会这样。json文件如下->
单击我的JSON链接
有人有什么想法吗?
回答:
可能您没有将JSON传递给DeserializeObject
。
它看起来像从File.WriteAllText(tmpfile,...
该类型tmpfile
就是string
包含文件路径。JsonConvert.DeserializeObject
采用JSON值,而不是文件路径-
因此尝试转换类似@"c:\temp\fooo"
-显然不是JSON 失败。
以上是 解析值时遇到意外字符 的全部内容, 来源链接: utcz.com/qa/433748.html