数据处理之JSON字典互转

字典 -> JSON字符串

+ (NSString *)TransformationToJsonStringWithDictionary:(NSDictionary *)dict{

    NSError *error;

    NSData *jsonData = [NSJSONSerialization dataWithJSONObject:dict options:NSJSONWritingPrettyPrinted error:&error];

    NSString *jsonString;

    if (!jsonData) {

        NSLog(@"%@",error);

    }else{

        jsonString = [[NSString alloc]initWithData:jsonData encoding:NSUTF8StringEncoding];

    }

    NSMutableString *mutStr = [NSMutableString stringWithString:jsonString];

    NSRange range = {0,jsonString.length};

    //去掉字符串中的空格

    [mutStr replaceOccurrencesOfString:@" " withString:@"" options:NSLiteralSearch range:range];

    NSRange range2 = {0,mutStr.length};

    //去掉字符串中的换行符

    [mutStr replaceOccurrencesOfString:@"\n" withString:@"" options:NSLiteralSearch range:range2];

    return mutStr;

}

JSON字符串 -> 字典

+ (NSDictionary *)TransformationToDictionaryWithJsonString:(NSString *)jsonString{

    if (jsonString == nil) {

        return nil;

    }

    NSData *jsonData = [jsonString dataUsingEncoding:NSUTF8StringEncoding];

    NSError *err;

    NSDictionary *dic = [NSJSONSerialization JSONObjectWithData:jsonData options:NSJSONReadingMutableContainers error:&err];

    if(err)

    {

        NSLog(@"json解析失败:%@",err);

        return nil;

    }

    return dic;

}

用途

为了数据的统一和方便使用,对于一块整体的数据,安卓、iOS、WEB和服务端通常会用JSON字符串的方式进行互通。而iOS需要使用转换字典来使用。

下载使用

https://github.com/githubze/FBJsonDicTransformation

你可能感兴趣的:(数据处理之JSON字典互转)