我正在尝试从 NSKeyedArchiver 中提取 NSString,如下所示:
NSMutableData *data = [[NSMutableData alloc] init];
NSKeyedArchiver *coder = [[NSKeyedArchiver alloc] initForWritingWithMutableData:data];
[coder encodeInt:1 forKey:@"myField"];
[coder finishEncoding];
NSString *myString = [[NSString alloc] initWithData:data encoding:NSUTF8StringEncoding];
NSLog(@"%@", myString);
问题是 myString 为零(NSLog 打印 '(null)')。上面的代码有什么问题?
我读过的其他帖子提到这通常是由于编码错误(即 NSMutableData 使用与 UTF-8 不同的编码)。我已经尝试了所有不同类型的编码,但仍然没有运气。