iOS json数据null的处理

//值为null时
+(id)nullToString:(NSObject *)string{
    if(string==nil){
        return @"";
    }
    if([string isEqual:[NSNull null]]){
        return @"";
    }
    return string;
}

//数据处理
+(id)conversationObject:(NSObject *)jsonData{
    if ([jsonData isKindOfClass:[NSDictionary class]]) {
        return [self conversationDictionary:(NSDictionary *)jsonData];
    } else if([jsonData isKindOfClass:[NSArray class]]) {
        return [self conversationArray:(NSArray *)jsonData];
    } else{
        return [self nullToString:jsonData];
    }
}
//字典处理
+(NSDictionary *)conversationDictionary:(NSDictionary *)dic{
    NSMutableDictionary *muDic = [NSMutableDictionary dictionaryWithDictionary:dic];
    for (NSString *key in dic.allKeys) {
        if ([[dic objectForKey:key] isKindOfClass:[NSDictionary class]]) {
            [muDic setObject:[self conversationDictionary:[dic objectForKey:key]] forKey:key];
        } else if([[dic objectForKey:key] isKindOfClass:[NSArray class]]) {
            [muDic setObject:[self conversationArray:[dic objectForKey:key]] forKey:key];
        } else {
            [muDic setObject:[self nullToString:[dic objectForKey:key]] forKey:key];
        }
    }
    return muDic;
}
//数组处理
+(NSArray *)conversationArray:(NSArray *)array{
    NSMutableArray *muArr = [NSMutableArray arrayWithArray:array];
    for (int i = 0;i<array.count ;i++) {
        if ([[array objectAtIndex:i] isKindOfClass:[NSDictionary class]]) {
            [muArr replaceObjectAtIndex:i withObject:[self conversationDictionary:[array objectAtIndex:i]]];
        } else if([[array objectAtIndex:i] isKindOfClass:[NSArray class]]) {
            [muArr replaceObjectAtIndex:i withObject:[self conversationArray:[array objectAtIndex:i]]];
        }else{
            [muArr replaceObjectAtIndex:i withObject:[self nullToString:[array objectAtIndex:i]]];
        }
    }
    return muArr;
}

猜你喜欢

转载自blog.csdn.net/zhjw1991/article/details/82754562