首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >我应该使用NSUserDefaults还是plist来存储数据?

我应该使用NSUserDefaults还是plist来存储数据?
EN

Stack Overflow用户
提问于 2011-08-15 02:37:07
回答 5查看 31K关注 0票数 51

我将存储一些字符串(可能是10-20个)。我不确定是应该使用NSUserDefaults来保存它们,还是应该将它们写出到plist中。什么被认为是最佳实践?NSUserDefaults似乎代码行数更少,因此实现起来更快。

我想补充的是,这些字符串值将由用户添加/删除。

EN

回答 5

Stack Overflow用户

发布于 2011-08-15 02:57:18

如果您要存储10-20个字符串,并且正在寻找不太多的代码行,那么核心数据肯定会有太多的开销。我推荐使用plist。代码不是很多:

代码语言:javascript
复制
NSURL *plistURL = [[NSBundle mainBundle] URLForResource:@"MyStrings" withExtension:@"plist"];
NSArray *stringArray = [NSArray arrayWithContentsOfURL:plistURL];
票数 8
EN

Stack Overflow用户

发布于 2011-08-15 03:09:54

NSUserDefaults会将用户首选项存储到Library/Preferences文件夹的一个文件中。从理论上讲,它只用于存储一些应用程序/用户属性。

Plist文件用于管理单个文件。如果您需要管理更多内容,则应该使用Coredata。对plist文件的大小没有限制。否则,你必须小心plist文件,因为当你需要保存或读取它时,文件的全部内容都会加载到内存中。

票数 5
EN

Stack Overflow用户

发布于 2011-08-15 02:56:50

这取决于您想要存储的内容和原因。NSUserDefaults用于存储用户首选项。您可以尝试将其用于其他用途,但您可能不应该这样做。

否则,如果你的需求很简单,plist文件是非常简单的。您还可以使用核心数据或提出自己的文件格式。一般来说,对于简单的任务,我会使用plist,然后对于任何复杂的任务,我都会使用核心数据。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/7058858

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档