0

我有一个对象。它只有两个 NSStrings 作为属性。

我创建了一个数组来保存其中的几个对象。

我是否需要使用 NSKeyedArchiver 将此数组保存到磁盘,或者我可以只使用 NSUserDefaults?

4

2 回答 2

1

如果您的对象是自定义类,则需要NSKeyedArchiver在将内容放入之前使用NSUserDefaults. 见这里

于 2012-08-07T03:15:19.657 回答
0

您可以只[[NSUserDefaults standardUserDefaults] setObject:myArray forKey:myKey];用于写作和[[NSUserDefaults standardUserDefaults] arrayForKey:myKey];阅读(没有setArray:forKey:因为不需要)。

此外,如果您有一个不想存储在 NSUserDefaults 中的数组,则很容易写入和读取数组:-[NSArray writeToFile:atomically:]+[NSArray arrayWithContentsOfFile:]。NSDictionary 也有相同的方法来轻松读/写字典。当然,您也可以随时使用 NSKeyed(Un)Archiver。

于 2010-09-19T10:22:33.913 回答