Objective-C中的解码和编码阵列
我可以用这种方法对数组进行解码和编码吗Objective-C中的解码和编码阵列,objective-c,arrays,Objective C,Arrays,我可以用这种方法对数组进行解码和编码吗 NSMutableArray *arr; -(void)encodeWithCoder:(NSCoder*)coder { [coder encodeInt:arr forKey:@"Array"]; } -(id)initWithCoder:(NSCoder*)decoder { NSMutableArray array; array = [[decoder decodeIntForKey:@"Array"]copy];
NSMutableArray *arr;
-(void)encodeWithCoder:(NSCoder*)coder
{
[coder encodeInt:arr forKey:@"Array"];
}
-(id)initWithCoder:(NSCoder*)decoder
{
NSMutableArray array;
array = [[decoder decodeIntForKey:@"Array"]copy];
return self;
}
它不会那样对
NSMutableArray进行编码/解码。
如果数组中的对象实现了NSCoding
协议,则可以通过调用以下命令对数组进行编码:
NSMutableArray * myMutableArray = ...
NSData* myData = [NSKeyedArchiver archivedDataWithRootObject:myMutableArray];
反过来说:
NSMutableArray* myMutableArray = [NSKeyedUnarchiver
unarchiveObjectWithData:myData];
它不会那样对
NSMutableArray进行编码/解码。
如果数组中的对象实现了NSCoding
协议,则可以通过调用以下命令对数组进行编码:
NSMutableArray * myMutableArray = ...
NSData* myData = [NSKeyedArchiver archivedDataWithRootObject:myMutableArray];
反过来说:
NSMutableArray* myMutableArray = [NSKeyedUnarchiver
unarchiveObjectWithData:myData];