iOS開發(fā)中,有時(shí)候需要將數(shù)組轉(zhuǎn)換為JSON格式,以便將數(shù)據(jù)傳輸?shù)椒?wù)器或者其他設(shè)備上。下面我們來介紹如何完成數(shù)組轉(zhuǎn)換為JSON。
NSArray *array = @[@{@"name":@"Tom",@"age":@"26"},@{@"name":@"Jerry",@"age":@"24"}]; //將數(shù)組轉(zhuǎn)換為JSON格式數(shù)據(jù) NSData *jsonData = [NSJSONSerialization dataWithJSONObject:array options:NSJSONWritingPrettyPrinted error:nil]; //將JSON格式數(shù)據(jù)轉(zhuǎn)換為字符串 NSString *jsonString = [[NSString alloc]initWithData:jsonData encoding:NSUTF8StringEncoding]; NSLog(@"%@",jsonString);
首先,我們創(chuàng)建一個(gè)包含字典元素的數(shù)組,然后使用NSJSONSerialization類的dataWithJSONObject方法將該數(shù)組轉(zhuǎn)換為JSON格式的NSData類型的數(shù)據(jù)。options參數(shù)指定轉(zhuǎn)換選項(xiàng),這里我們使用NSJSONWritingPrettyPrinted參數(shù)指定將JSON數(shù)據(jù)以易讀的格式輸出。如果轉(zhuǎn)換失敗,我們直接通過error返回錯(cuò)誤信息。
接著,我們將JSON格式的NSData類型數(shù)據(jù)轉(zhuǎn)換為NSString類型的字符串。使用initWithData初始化一個(gè)NSString實(shí)例,編碼我們這里選用UTF8編碼。
最后,我們打印JSON字符串并完成了數(shù)組轉(zhuǎn)換為JSON格式的全部操作。