*** Terminating app due to uncaught exception 'NSInvalidUnarchiveOperationException', reason: '*** -[NSKeyedUnarchiver decodeObjectForKey:]: cannot decode object of class (President)'
*** First throw call stack:
当用NSKeyedUnarchiver对象decode资源文件plist时,如果报上述提示的错误,代码:
NSString *path = [[NSBundle mainBundle] pathForResource:@"Presidents"
ofType:@"plist"];
NSData *data;
NSKeyedUnarchiver *unarchiver;
data = [[NSData alloc] initWithContentsOfFile:path];
unarchiver = [[NSKeyedUnarchiver alloc] initForReadingWithData:data];
NSMutableArray *array = [unarchiver decodeObjectForKey:@"Presidents"];//
self.list = array;
[unarchiver finishDecoding];
一般由NSMutableArray *array = [unarchiver decodeObjectForKey:@"Presidents"];这一句报的错,分析原因是没有President这个类,查看该类的相关定义,主要是拼写错误问题。