iOSはNSString値が空またはnullであるかどうかを判断し、空の文字列に変換する

4040 ワード

iOSはNSString値が空またはnullであるかどうかを判断し、空の文字列に変換する
バックグラウンドjsonがnullを文字列値として誤ってiOSクライアントがクラッシュしてフラッシュバックする問題に遭遇し、解決方法は以下の通りである:様々な状況のnullであれば@""に変換する.
+ (NSString *)nullToString:(id)string {
    if ([string isEqual:@"NULL"] || [string isKindOfClass:[NSNull class]] || [string isEqual:[NSNull null]] || [string isEqual:NULL] || [[string class] isSubclassOfClass:[NSNull class]] || string == nil || string == NULL || [string isKindOfClass:[NSNull class]] || [[string stringByTrimmingCharactersInSet:[NSCharacterSet whitespaceAndNewlineCharacterSet]] length]==0 || [string isEqualToString:@""] || [string isEqualToString:@"(null)"]) {
        return @"";
    } else {
        return (NSString *)string;
    }
}