关于iphone:NSArray,Plist,NSDictionary或有关存储数据的建议

NSArray, Plist, NSDictionary or recommendation on storing data

我尝试了很多不同的方法,但不确定该怎么做。 我有一个mysql数据库表,我正在尝试将其转换为可用于我的iPhone应用程序的东西。 我需要存储大约90行数据。 每行有3列(2个NSString和一个整数)。 我当时认为最好的存储方法是NSDictionary,但我也必须将其加载到pickerview中,使用NSDictionary似乎比使用数组复杂得多。 另外,从性能角度来看,我的理解是,如果使用plist,它将把所有键/值加载到内存中,而sqlite则不会。 有什么建议吗? 谢谢。


您应该创建一个代表一行的类。 此类将具有3个属性(2个NSString和一个int)。 因此,您将拥有一个包含90个此类实例的数组。

或者,您可以使用包含90个字典的数组(每个字典代表一行)。 但是我推荐第一种方法。

最后,90个值不是很多数据,您可以使用plist或SQLite。 但是我认为SQLite对于您的应用程序来说是一个过大的杀伤力,它将增加更多的复杂性而没有任何明显的优势。


NSDictionaryNSArray确实并没有多少复杂。

对于只有90行的数据,我不会担心内存。 一个plist听起来像是一个明智的解决方案,将plist数据读入包含NSObject子类实例的NSArray中,该子类的实例适当地封装了行数据。