我有这个对象。
@interface SeccionItem : NSObject <NSCoding>
{
NSString * title;
NSString * texto;
NSArray * images;
}
@property (nonatomic,strong) NSString * title;
@property (nonatomic,strong) NSString * texto;
@property (nonatomic,strong) NSArray * images;
@end
有了这个实现
@implementation SeccionItem
@synthesize title,texto,images;
- (void) encodeWithCoder:(NSCoder *)encoder {
[encoder encodeObject:title forKey:@"title"];
[encoder encodeObject:texto forKey:@"texto"];
[encoder encodeObject:images forKey:@"images"];
}
- (id)initWithCoder:(NSCoder *)decoder {
title = [decoder decodeObjectForKey:@"title"];
texto = [decoder decodeObjectForKey:@"texto"];
images = [decoder decodeObjectForKey:@"images"];
return self;
}
@end
我想将一个填充了这些对象的数组保存到磁盘上的一个文件中。
我这样做:
来写
[NSKeyedArchiver archiveRootObject:arr toFile:file];
读书
NSArray *entries = [NSKeyedUnarchiver unarchiveObjectWithFile:name];
return entries;
但是读取的数组总是空的,我不知道为什么,我有一些问题。
我应该使用什么格式的文件路径?在 toFile:?
对象上的 NSArray 充满了 NSData 对象,所以我可以对它们进行编码吗?
我真的迷失了这一点。