到目前为止,我一直在使用NSUserDefaults
来保存我的NSMutableDictionaries
,但现在我要保存一个字典,它看起来像这样:它会保持不同的Car
带钥匙的物体:汽车的模型。 Car
类将包含其基本特征的字典和Person
对象的字典(使用该汽车的人)。每个Person
课程都会将个人信息作为属性。我可以做其他所有事情,但不能保存保存所有信息的第一个NSMutableDictionary
。(字典必须只包含非属性值错误)保存它的适当方法是什么?
答案 0 :(得分:2)
您必须使用NSKeyedArchiver之类的归档程序将对象序列化/反序列化为NSData存档。
图表中的所有对象
必须采用NSCoding协议。为此,您可以使用:
-(id)initWithCoder:(NSCoder *)coder
{
// Tell the unarchiver how to read your object properties from the archive
_oneObjectProperty = [coder decodeObjectForKey:@"propertyKey"];
.....
}
-(void)encodeWithCoder:(NSCoder *)coder
{
// Tell the archiver how to serialise your object properties
[coder encodeObject:_oneObjectProperty ForKey:@"propertyKey"];
....
}
您可以在此处找到代码示例: Why NSUserDefaults failed to save NSMutableDictionary in iPhone SDK?
答案 1 :(得分:0)
您可以使用NSKeyedArchiver
保存对象,使用NSKeyUnarchiver
来检索对象。