运行代码会导致崩溃。
-(NSString*) ExtractStringKeyValue:(NSString*)key
{
@try {
NSRange start = [_responceInfo rangeOfString:key];
NSRange end = [[_responceInfo substringFromIndex:start.location + start.length+2]
rangeOfString:@"\""];
NSRange rang = NSMakeRange(
start.location + start.length+1
, end.location+1);
return [_responceInfo substringWithRange:rang];
}
@catch (NSException * e) {
NSLog(@"Exception: %@", e);
}
@finally {
NSLog(@"finally");
}
}
调试控制台:
2012-02-27 01:10:16.254 Clicky [8665:9203] 异常:* -[NSCFString substringFromIndex:]:范围或索引超出范围
2012-02-27 01:10:16.255 Clicky[8665:9203] 终于
请帮忙。
最佳答案
正如我们在控制台中看到的输出,您的代码通过 @finally block :
2012-02-27 00:28:02.794 Clicky[8409:9203] finally
并根据错误信息
Terminating app due to uncaught exception 'NSRangeException', reason: '* -[NSCFString substringFromIndex:]: Range or index out of bounds'
,我可以告诉你,你的问题不在这个方法上。
关于objective-c - @try @catch 不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9457973/