解决ios抛出异常信息导致崩溃

在项目中读取本地数据的时候,

[NSKeyedUnarchiverunarchiveObjectWithFile:[selfsavePath]

有一定的概率会抛出异常,当然这个概率不到万分之一,这里只是举个例子。

抛出异常后程序肯定会崩溃,我也是今天才发现原来是有办法避免这种崩溃的。

看个例子:常见的越界问题

NSString*test =@"test";

unichara;

intindex =6;

a = [testcharacterAtIndex:index];

这样运行直接崩溃

换种方式:

NSString*test =@"test";

unichara;

intindex =6;

@try{

a = [testcharacterAtIndex:index];

}@catch(NSException *exception) {NSLog(@"%@", exception.reason);

}@finally{

NSLog(@"Char at index %d cannot be found", index);

NSLog(@"Max index is: %lu", [testlength]-1);}

使用

@try{

}@catch(NSException *exception) {

}@finally{

}

可以捕获异常,并且不会崩溃,代码依然执行

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • 一、NSException简介 1.什么是NSException? 说到NSException你可能不太了解,但是...
    予独爱秋天的梅花阅读 10,760评论 5 8
  • NSException是什么? 最熟悉的陌生人,这是我对NSException的概述,为什么这么说呢?其实很多开发...
    清风沐沐阅读 4,239评论 0 2
  • 前言 崩溃是让发人员比较头痛的事情,app崩溃了,说明代码写的有问题,这时如何快速定位到崩溃的地方很重要。调试阶段...
    進无尽阅读 6,308评论 0 9
  • 理解了权力的本质,才能用好权力 抄一遍有抄一遍的心得,输入太少,输出质量很烂。多读书,多读书,多读书啊! “不心不...
    丨张伟丨阅读 2,405评论 1 1
  • 一年一年又一年 喜怒哀乐在眼前 酸甜苦辣多少事 一年一年又一年
    想当年1978阅读 1,369评论 0 0

友情链接更多精彩内容