-[NSKeyedUnarchiver initForReadingWithData:]: incomprehensible archive> # Binary Image name Address Symbol 0 CoreFoundation 0x3357b2a3 __exceptionPreprocess> 1 libobjc.A.dylib 0x3b3df97f objc_exception_throw> 2 CoreFoundation 0x3357b1c5 -[NSException initWithCoder:]> 3 Foundation 0x33e124ef -[NSKeyedUnarchiver initForReadingWithData:]> 4 Foundation 0x33e73537 +[NSKeyedUnarchiver unarchiveObjectWithfile:]
我的代码很好,这在我的应用程序中发生过一次,但我只是想知道损坏的数据是否是发生这种情况的可行原因.如果是这样有办法处理腐败数据?
解决方法 您可以将部分代码包装在@try @catch构造中以评估异常并避免崩溃.这是一个例子:
- (UIImage*) loadImageFromCacheWithfilePath: (Nsstring*) somePath { UIImage* image = nil; @try { image = [NSKeyedUnarchiver unarchiveObjectWithfile:somePath]; } @catch (NSException* exception) { // Surpress any unarchiving exceptions and continue with nil NSLog(@"Load image from cache was Failed with exception: %@",[exception reason]); } return image; //This will return nil if exception caught}总结
以上是内存溢出为你收集整理的ios – NSKeyedUnarchiver难以理解的档案全部内容,希望文章能够帮你解决ios – NSKeyedUnarchiver难以理解的档案所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)