Héc*_*mos 6 iphone json objective-c cocoa-design-patterns
我们的应用程序必须使用最少的远程http请求显示大量数据,因此我们在后端添加了一个端点,它将所有必要的数据作为单个json响应提供.这导致~1.5MB(压缩)或大约8 MB的未压缩的json格式文本.
没有太大问题,它会在10到30秒内下载,我们正在使用ASIHTTPRequest将整个响应写入磁盘.
现在是有趣的部分 - 在将未压缩文件读入内存映射字符串后,我们使用stig的json-framework将其转换为NSDictionary.这对我们的应用程序的其余部分以及其他API端点的典型2 KB json响应非常有效.但是,将这8 MB数据反序列化需要几秒钟(模拟器)到几分钟(3G和第二代iPod Touch).
我正在研究读取所有这些数据的最佳方法.
我很乐意使用直接从后端提供的二进制plist,但是我们使用Java并且我没有找到符合我们要求的合适库,并且在如此紧迫的期限内,编写我们自己可能不是最好的主意.
如果它以任何方式有帮助,我们正在解析的json字符串主要是X项的数组,如下所示:
{
"items": [ { "key1": "value1", "key2": "value2" },
{ "key1": "value1", "key2": "value2" },
{ "key1": "value1", "key2": "value2" },
{ "key1": "value1", "key2": "value2" },
{ "key1": "value1", "key2": "value2" },
{ "key1": "value1", "key2": "value2" }
]
}
Run Code Online (Sandbox Code Playgroud)
将这个8 MB json格式的字符串读入内存中的NSDictionary的最有效方法是什么?
| 归档时间: |
|
| 查看次数: |
2376 次 |
| 最近记录: |