iOS:json格式字符串转字典,字典转json格式字符串

json格式字符串转字典不能直接转化需要先转换成Data,在转化成字,
同样字典也不能直接转换成json格式字符串。

json格式字符串转字典:

+ (NSDictionary *)dictionaryWithJsonString:(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;

}

字典转json格式字符串:

+ (NSString*)dictionaryToJson:(NSDictionary *)dic

{

NSError *parseError = nil;

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

return [[NSString alloc] initWithData:jsonData encoding:NSUTF8StringEncoding];

}

NSJSONWritingPrettyPrinted 是有换位符的。

如果NSJSONWritingPrettyPrinted 是nil 的话 返回的数据是没有 换位符的

你可能感兴趣的:(iOS:json格式字符串转字典,字典转json格式字符串)