ios - 将大型 NSDictionary 保存到磁盘 iOS

标签 ios performance save nsdictionary disk

我的应用程序旨在查看包含产品的目录。从服务器 (xml) 接收到的所有数据都在 NSDictionary 中进行解析。所以 NSDictionary 包含大约 5000 个项目。使用 NSKeyedUnarchiver 读取字典需要 24 秒。这是 Not Acceptable 。

我不需要向前和向后兼容,因为应用更新后目录将被重新下载,旧数据将被删除。

我的字典不是属性列表,所以 writeToFile 不工作。

NSArchiever(NSUnarchiever) 将是解决该问题的好方法,但它已被 NSKeyedArchiver 取代。

有什么想法吗?也许我应该使用 CoreData,但我对此一无所知。

谢谢

最佳答案

您是否尝试过将其另存为 JSON 格式的文件? NSJSONSerialization 将帮助您在文件数据和 NSDictionary 之间来回切换。它是在 iOS5 中添加的。

https://developer.apple.com/library/ios/documentation/Foundation/Reference/NSJSONSerialization_Class/Reference/Reference.html

让我知道它是否对您来说表现足够好。

关于ios - 将大型 NSDictionary 保存到磁盘 iOS,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18639509/

相关文章:

java - 在 java 中使用 jdbc 驱动程序缓慢的 sqlite 插入

c++ - 保存源函数的最佳方式

iphone - 有什么方法可以强制 UIKit 在某些设备上使用标准(不是 @2x)图像,即使 @2x 图像可用?

sql - 是否有必要考虑删除现有索引,因为它是推荐索引的前缀

python - 如何快速找到 sqlite 数据库中最接近给定输入的行?

C# 保存图像质量差

javascript - 保存网页 View 游戏分数

ios - 代号一 - iOS 应用的应用版本格式

c++ - Direct2D 等效于 IOS OSX 开发

ios:我想创建包含我所有联系人的 .vcf/vcard。我该怎么做呢?