IOS成長之路-JSON解析

來源:互聯網
上載者:User

json資料:

{    "result": [               {               "meeting": {               "addr": "203",               "creator": "張一",               "member": [                          {                          "name": "張二",                          "age": "20"                          },                          {                          "name": "張三",                          "age": "21"                          },                          {                          "name": "張四",                          "age": "22"                          }                          ]               }               },                  {               "meeting": {               "addr": "204",               "creator": "張二",               "member": [                          {                          "name": "張二",                          "age": "20"                          },                          {                          "name": "張三",                          "age": "21"                          },                          {                          "name": "張四",                          "age": "22"                          }                          ]               }               }               ]}

1、擷取json檔案路徑,根據路徑來擷取裡面的資料:

NSString *path=[[NSBundle mainBundle] pathForResource:@"test" ofType:@"json"];    NSString *_jsonContent=[[NSString alloc] initWithContentsOfFile:path encoding:NSUTF8StringEncoding error:nil];

2、然後根據得到的_jsonContent字串對象來擷取裡面的索引值對:

NSMutableDictionary dict=[_jsonContent JSONValue];//我們不需要去定義擷取的方法,使用系統定義好的JSONValue即可

3、然後根據得到的索引值對來進行JSON解析:

 /*         根據上面json資料之間的邏輯關係,可以獲知我們解析的順序:           1. 根據得到的字串擷取裡面的索引值對,             2.   根據得到的索引值對通過key來得到對應的值,也就是值裡面的數組,               3.     然後擷取數組中的索引值對,                 4.       然後根據得到的索引值對通過key擷取裡面的索引值對中的值         */       //json解析        //2.        NSArray *result=[_dict objectForKey:@"result"];        //3.        NSDictionary *dic=[result objectAtIndex:0];        //4.        NSDictionary *meeting=[dic                               objectForKey:@"meeting"];                //得到 addr 值        NSString *address = [meeting objectForKey:@"addr"];        //得到 creator 值        NSString *creator = [meeting objectForKey:@"creator"];        //得到 member 裡面的資料,因為這個索引值中有數組,所以要重複上面的2,3,4的動作        //2.        NSArray *members=[meeting objectForKey:@"member"];        //3.        //這裡用了for迴圈語句,        for (NSDictionary * member in members) {            //4.            NSString *name = [member objectForKey:@"name"];            NSString *age = [member objectForKey:@"age"];        }

這樣就可以實現解析json資料了。。。

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.