C# 在C中加载大型JSON文件#
1) 我需要在Windows Phone应用程序上下载一个大的JSON文件,我希望在下载时处理JSON,因为否则应用程序只会不断下载JSON,这可能需要10秒或更长时间,有什么方法可以做到这一点吗?我已经搜索了2天了,但似乎没有任何效果 2) 有什么简单的方法可以检查这个JSON文件中的新项目吗?它是在线托管的,因此我必须检查是否有新项目(节点)添加到文件中C# 在C中加载大型JSON文件#,c#,json,windows-phone-7,windows-phone-8,webrequest,C#,Json,Windows Phone 7,Windows Phone 8,Webrequest,1) 我需要在Windows Phone应用程序上下载一个大的JSON文件,我希望在下载时处理JSON,因为否则应用程序只会不断下载JSON,这可能需要10秒或更长时间,有什么方法可以做到这一点吗?我已经搜索了2天了,但似乎没有任何效果 2) 有什么简单的方法可以检查这个JSON文件中的新项目吗?它是在线托管的,因此我必须检查是否有新项目(节点)添加到文件中 只要问问服务器是否有新的东西,让他只发送给你真正的新东西。它将大大减少,因此在网上传输的数据更少,处理和可视化(如果需要)的时间也更少 或
一,。如果您想逐步解析JSON对象,请查看JSON.NET的
JsonReader
请注意,在Windows Phone上,您无法从UI线程上的网络流中提取,但如果您将工作推送到后台线程,则可以提取(请查看BackgroundWorker
)
二,。如果您的web服务器支持它,您可以在没有匹配的情况下传递,
/(如果自
头修改)并接受304响应,以指示没有任何更改
但是,这只匹配整个HTTP请求。如果需要更详细的信息,您可以将请求分为:
a) 请求ID和上次修改日期的列表
b) 请求ID列表的详细信息(由应用程序根据修改后的日期确定)@newStackExchangeInstance:你知道有任何流式JSON解析器吗?询问服务器恐怕没有选择,它是一个类似rss提要的JSON文件,每次添加新项目时都会更新(自2008年以来),我刚好能够获得该JSON文件,除此之外……我恐怕现在你没有太多的选择,然后在客户端以某种巧妙的方式管理它。这就是我所担心的,我希望这里的任何人在我之前遇到过这个问题,并能为我提供一些建议……)