iOS建立JSON字串
阿新 • • 發佈:2019-01-29
一、區分json字串和json物件:
1、json字串就是字串 ,只不過字串的內容格式是json格式的。
2、json物件是物件 ,是json格式的物件 。什麼是json格式啊 就是 鍵值對, 鍵可以是字串也可以數字 ,值可以是字串 ,也是可以是數值,還可以是物件。
二、當沒有網路卻需要除錯從伺服器返回的資料解析怎麼辦?使用假資料,建立一個與伺服器返回的json格式相同的字串,把它當做返回資料進行解析。
NSString *jsonStr = @"{name:\"zhu\", age:10}";
所有的雙引號都要轉義成\”,否則不符合OC語法,解析的時候將json字串轉成字典即可。
json字串轉字典的方法呼叫:
// json字串轉字典
NSDictionary *data = [SomeClass dictionaryWithJsonString:jsonStr];
json字串轉字典的方法實現:
/*!
* @brief 把格式化的JSON格式的字串轉換成字典
* @param jsonString JSON格式的字串
* @return 返回字典
*/
+ (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;
}