我正在尝试将词典保存在plist中。 其中一个字典键是图像。
我有两种选择(尝试和工作),但不确定哪种更好?
1)将文件保存在Documents文件夹中作为文件+在plist中保存文件名以便日后检索?
2)将图像的NSData直接保存在plist中以便日后检索?
我尝试了两种方法,两种方法都很好用。我能够保存和检索图像。
我的问题是:对于另一种方式,是否有任何优点/缺点?
由于
编辑:
更多说明:图像来自相机,我使用
保存NSData *imageData = UIImageJPEGRepresentation(image, 0.7f);
[imageData writeToFile:[SAD.myE documentsPathForFileName:@"testImage.jpg"] atomically:YES]; //Write the file
然后我缩小它们,并保存一个较小的图像用于tableView,每个单元格一个图像。
据我所知,最好将它们保存为Documents目录中的文件并在后台以那种方式检索它们?
答案 0 :(得分:1)
肯定会建议将UIImage
保存到文件并将文件名保留在plist中。 Plists并不打算如此繁重地存储大量数据。保存到文件后,您将看到更好的性能。
答案 1 :(得分:1)
这实际上取决于您保存的方式,更重要的是,您以后使用数据的方式。
在大多数情况下保存可以卸载到后台,然后它不是你的瓶颈,你可以自由地做任何你想做的事情
阅读数据通常是时间限制的主题,例如您正在表视图中显示图片,这意味着您希望每个文件分隔一个图像,以便您可以尽可能原子地读取。或者你可能需要随机访问 - 然后你最好将除二进制blob之外的所有数据序列化为SQLite
如果您能提供数据消费样本,那就等等。
澄清一下,如果您正在优化阅读 - 最好的选择是保存解压缩的图像,这样它甚至不需要解析png或jpg格式