字典、数组和json字符串的相互转化
2017-07-18 14:44
344 查看
关于字典、数组和json字符串的转化,主要用到的是NSJSONSerialization这个类里面的两个方法:
看上面两个方法,不难发现,不管字典转化为json字符串,还是json字符串转化为字典,都需要先以NSData类型为中转。
+ (nullable id)JSONObjectWithData:(NSData *)data options:(NSJSONReadingOptions)opt error:(NSError **)error; + (nullable NSData *)dataWithJSONObject:(id)obj options:(NSJSONWritingOptions)opt error:(NSError **)error;
看上面两个方法,不难发现,不管字典转化为json字符串,还是json字符串转化为字典,都需要先以NSData类型为中转。
//将jsonString转化为字典 - (NSDictionary *)transformStringIntoDictionary:(NSString *)jsonString { //先将jsonString转化为NSData类型数据 NSData *data = [jsonString dataUsingEncoding:NSUTF8StringEncoding]; NSError *error; //将NSData类型转化为NSDictionary类型,也可以转化为NSArray类型 NSDictionary *dic = [NSJSONSerialization JSONObjectWithData:data options:NSJSONReadingMutableContainers error:&error]; return dic; }
//将字典/数组转化为jsonString - (NSString *)transformDictionaryIntoString:(NSDictionary *)dictionary { NSError *error; //先将NSDictonary转化为NSData类型 NSData *data = [NSJSONSerialization dataWithJSONObject:dictionary options:NSJSONWritingPrettyPrinted error:&error]; //再把NSdata类型转化为String类型 NSString *jsonString = [[NSString alloc]initWithData:data encoding:NSUTF8StringEncoding]; return jsonString; }
相关文章推荐
- js中json与数组字符串的相互转化
- 数组、字典转化为json字符串
- js中json与数组字符串的相互转化
- js中json与数组字符串的相互转化
- Java 对象,数组 与 JSON 字符串 相互转化
- iOS对象(字典或数组)转化为JSon字符串
- js中json与数组字符串的相互转化
- iOS对象(字典或数组)转化为JSon字符串
- object转化成json,json格式字符串转字典,数组或字典转为json串
- iOS对象(字典或数组)转化为JSon字符串
- Json字符串与字典对象的相互转化
- JSONString 与 JSONData 与字典或者数组互相转化
- JSON 数组转化 OC的数组转化成OC格式的字符串
- JS解析json数据并将json字符串转化为数组的实现方法
- JS解析json数据并将json字符串转化为数组的实现方法
- 解析数据文件之字符串转数组类型【里面是json格式化字典】类型
- json对象与json字符串相互转化
- [js][json]前台页面中json和字符串相互转化(转)
- 后台将对象转换为json格式,前台js解析json数据,将字符串转化为数组
- Python处理json字符串转化为字典