我听说过Json.NET比DataContractJsonSerializer快,想试试看吧…
但我找不到任何方法在JsonConvert接受流,而不是一个字符串。
例如,对于在WinPhone上反序列化包含JSON的文件,我使用以下代码将文件内容读入字符串,然后反序列化为JSON。在我的(非常ad-hoc)测试中似乎是比使用DataContractJsonSerializer慢4倍慢直接从流…
// DCJS DataContractJsonSerializer dc = new DataContractJsonSerializer(typeof(Constants)); Constants constants = (Constants)dc.Readobject(stream); // JSON.NET string json = new StreamReader(stream).ReadToEnd(); Constants constants = JsonConvert.DeserializeObject<Constants>(json);
我做错了吗?
谢谢,
omri。
更新:这不再工作在当前版本,请参见
below正确答案(无需投票,这是正确的老版本)。
将JsonTextReader类与StreamReader一起使用,或者使用直接接受StreamReader的JsonSerializer重载:
var serializer = new JsonSerializer(); serializer.Deserialize(streamReader);
原文地址:https://www.jb51.cc/json/288852.html
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。