在iPhone应用程序中存储500个NSStrings数组

时间:2012-03-06 22:14:06

标签: objective-c ios arrays xcode4 nsstring

我想创建一个iPhone应用程序,从服务器获取多达500个NSStrings,然后存储该数据供以后使用。

我相信我的选择是使用NSUserDefaults,将它们存储在SQLite数据库中,或将它们存储在XML文件中。

这是对的吗? 500 NSStrings的阵列大吗?我应该使用哪种方法?

2 个答案:

答案 0 :(得分:3)

NSUserDefaults适用于少量应用程序状态和/或首选项。

SQLite很好,但如果你没有使用任何RDBMS功能,可能会有点过分。在内部,Core Data使用SQLite。如果你对对象图不感兴趣,那么核心数据就是令人难以置信的过度杀伤(并且有很多开销)。

XML用于存储任意结构化数据。您的数据是否有任何固有的结构,或者仅仅是500个字符串的列表?如果没有结构,那么XML就是矫枉过正,你必须解析它,这意味着代码数量非常少。

你没有提到的另外两个选项是:plist和NSKeyedArchiver。我会留给你阅读这些内容。

就个人而言,我只是选择一个文本文件,但附带条件是您没有提供有关数据性质或您将要使用它的内容的足够信息。

答案 1 :(得分:3)

您可以使用

NSArray initWithContentsOfFile:

NSArray writeToFile:

轻松将您的字符串存储在文件中。