Json本地解析

- (void)viewDidLoad {
    [super viewDidLoad];

    //1.獲取文件的路徑
    NSString *jsonFilePath = [[NSBundle mainBundle] pathForResource:@"test.json" ofType:nil];
    //2.讀取文件內(nèi)的數(shù)據(jù)(NSData類型:一般服務(wù)器返回的數(shù)據(jù)類型是NSData)
    NSData *jsonData = [NSData dataWithContentsOfFile:jsonFilePath];
    //3.JSON解析
    /* 流程:JSON對象轉(zhuǎn)Foundation對象
       使用什么類型的Foundation對象的原則: 最外層是中括號/數(shù)組,使用NSArray;最外層是大括號/對象,使用NSDictionary
     */
    NSError *error = nil;
    NSDictionary *dicFromFile = [NSJSONSerialization JSONObjectWithData:jsonData options:NSJSONReadingMutableContainers error:&error];
    //4.取值并驗(yàn)證解析的數(shù)據(jù)
    /* 取值原則:從外往里一層一層
     */
    NSNumber *feelsLikeC  = dicFromFile[@"FeelsLikeC"];
    NSString *tempC       = dicFromFile[@"TempC"];
    NSArray *requestArray = dicFromFile[@"Request"];
    NSDictionary *cityDic = requestArray[0];
    NSString *cityName    = cityDic[@"city"];
    NSDictionary *locationDic = requestArray[1];
    NSString *locationStr = locationDic[@"location"];
    NSNumber *count = dicFromFile[@"Paging"][@"count"];
    
    NSLog(@"體感溫度:%@;天氣溫度:%@;城市名字:%@;區(qū)域名字:%@;頁數(shù):%@",feelsLikeC, tempC, cityName, locationStr,count);
}
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容