NSError - 错误

简单记录下,没什么内容;
NSError 内容也比较简单:错误域,错误码,错误信息

遇到很多把 domain 当做 errorMessage用的,我想为啥不直接用errorMessgae算了,还要多用个NSError;

    NSError *error = [[NSError alloc] initWithDomain:@"testDomain"
                                                code:9998
                                            userInfo:@{NSLocalizedDescriptionKey:@"错误描述",
                                                       NSLocalizedFailureReasonErrorKey:@"错误原因",
                                                       NSLocalizedRecoverySuggestionErrorKey:@"解决建议",
                                                       NSLocalizedRecoveryOptionsErrorKey:@[@"解决建议可选1",@"解决建议可选2"]}];
    
    // Domain 错误域:产生错误的地方(系统提供了一些定义的域)
    /*
     FOUNDATION_EXPORT NSString *const NSCocoaErrorDomain;
     FOUNDATION_EXPORT NSString *const NSPOSIXErrorDomain;
     FOUNDATION_EXPORT NSString *const NSOSStatusErrorDomain;
     FOUNDATION_EXPORT NSString *const NSMachErrorDomain;
     */
    NSString *domain = error.domain;

    
    // code:错误码
    NSInteger code = error.code;

    
    // userInfo:错误信息(系统提供了很多定义的key)
    NSDictionary *userInfo = error.userInfo;
    
    NSString *localizedDescription = userInfo[NSLocalizedDescriptionKey];
    NSString *localizedFailureReason = userInfo[NSLocalizedFailureReasonErrorKey];
    NSString *localizedRecoverySuggestion = userInfo[NSLocalizedRecoverySuggestionErrorKey];
    NSArray *localizedRecoveryOptions = userInfo[NSLocalizedRecoveryOptionsErrorKey];
    
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容