【发布时间】:2013-07-04 18:46:32
【问题描述】:
我的 iPad 应用程序需要解析一个 10 MB 的 JSON 文件并将其内容保存在 Core Data 中。
考虑到大文件大小和内存使用情况,您会推荐使用NSJSONSerialization,还是选择基于流的 JSON 解析器(在这种情况下,您会推荐哪种基于流的解析器)?顺便说一句:该文件是由另一个 iOS 应用使用NSJSONSerialization 创建的。
谢谢!
【问题讨论】:
-
如果“基于流”是指类似于某些 XML 解析器的解析器,在这些解析器中,您“询问”特定数据位并“即时”提取,而不是解析整个文件并返回结果数据在一个“块”中,这种类型的 JSON 解析器很少。这在很大程度上是因为解析后的 JSON 的内部表示比 XML 的典型内部表示更紧凑,因此一次解析所有内容更实用。 (另外,您无法像使用 XML 那样保证 JSON 对象中的项目顺序。)
标签: ios json ios5 memory-management nsjsonserialization