JSON -> NSArray/NSDictionary
/*
第一个参数:要解析的二进制数据
第二个参数:解析json的选项
NSJSONReadingMutableContainers = (1UL << 0), 最外层是可变的字典和数组
NSJSONReadingMutableLeaves = (1UL << 1), 里面的字符串也是可变的,iOS7
NSJSONReadingAllowFragments = (1UL << 2) 最外层既不是字典也不是数组
kNilOptions为什么都没有
第三个参数:错误信息
*/
NSArray *array = [NSJSONSerialization JSONObjectWithData:data options:kNilOptions error:nil];
NSArray/NSDictonary -> JSON
// 1、创建一个NSMutableArray
NSMutableArray *listObj = [NSMutableArray array];
for (NSString *uid in uids) {
NSDictionary *dict = @{@"uid":uid};
[listObj addObject:dict];
}
// 2、判断是否能转为Json数据
BOOL isValidJSONObject = [NSJSONSerialization isValidJSONObject:listObj];
if (!isValidJSONObject) {
return NO;
}
/*
第一个参数:OC对象 也就是我们dict
第二个参数:
NSJSONWritingPrettyPrinted 排版
kNilOptions 什么也不做
*/
NSData *data = [NSJSONSerialization dataWithJSONObject:listObj options:kNilOptions error:nil];
// 打印JSON数据
NSLog(@"%@", [[NSString alloc] initWithData:data encoding:NSUTF8StringEncoding]);
NSData *base64Data = [data base64EncodedDataWithOptions:NSDataBase64Encoding64CharacterLineLength];
NSString *mapBase64String = [[NSString alloc] initWithData:base64Data encoding:NSUTF8StringEncoding];