我有一个 NSMutableArray *recordsArray,键是 NSString,值是自定义对象:
@interface DictRecord : NSObject{
}
@property (nonatomic, retain) NSString* word;
@property (nonatomic, retain) NSString *wordStatus;
Cocoa:如何保存/归档包含自定义对象的 NSMutableArray
我想保存那个 NSMutable 数组,最好是非二进制(有点可读)格式。
我已通读文档并将编码方法添加到 DictRecord:
- (void) encodeWithCoder: (NSCoder *)coder
{
[coder encodeObject: _word forKey:@"word" ];
[coder encodeObject: _wordStatus forKey:@"wordStatus" ];
}
- (id) initWithCoder: (NSCoder *) coder
{
self = [super init];
if (self) {
self.word = [coder decodeObjectForKey:@"word"];
self.wordStatus = [coder decodeObjectForKey:@"wordStatus"];
}
然后我尝试保存使用:
[recordsArray writeToFile:filePath atomically:YES];
保存了一个文件,但我可以看到它是空的。
谁能告诉我我省略了哪些步骤,或者我是否走错了路。
谢谢