小型数据库的方法 - iOS

时间:2016-02-13 08:22:14

标签: ios objective-c persistence

我正在构建一个应用程序,需要我存储一些东西。

我有一个由4到5个BOOL变量组成的数据对象,可能有800到1000个这样的对象需要保留。

我很困惑如何编程这个,我应该选择sql数据库还是核心数据,因为NSUserdefaults显然不是一个选项。

2 个答案:

答案 0 :(得分:1)

您可以像@adobels建议的那样轻松地将它们存储在plist中。您的类将BOOL存储在NSNumber中,您的类实现NSCoding:

- (void)encodeWithCoder:(NSCoder *)coder {
        [coder encodeObject:member1ToStore forKey:@"yourFirstBoolKey"];
}
- (id)initWithCoder:(NSCoder *)coder ...

如果您的类的所有实例都在NSArray(或类似的Cocoa Collection)中,那么您只需将其归档并取消归档到

这样的文件中
[NSKeyedArchiver archiveRootObject:yourCollectionOfClasses toFile:archivePath]
[NSKeyedUnarchiver unarchiveObjectWithFile:[[self archiveURL] path]];

请参阅documentation at apple developerthis fine answer

答案 1 :(得分:0)

1000对象也可以存储在plist中。使用您的类型的1000个对象生成.plist文件。然后检查应用中的效果。如果没问题,那么你的应用程序就更容易编写了。