2012年12月13日 星期四

連接JSON時,先看資料是Array?還是Dictionary?

連接JSON時,先看資料是Array?還是Dictionary?

[ Array

{Dictionary

JSON的資料
{ "NewBook": [ { "BookNo": "0104347 ", "BookName": "遇見街貓Bob ", "Author": "詹姆斯.伯恩 ", "Price": 290, "MemPrice": 229, "VipPrice": 220, "Url": "http://www.morningstar.com.tw/bookcomment-2.aspx?BOKNO=0104347", "ImgBig": "http://www.morningstar.com.tw/pic_m/0104347.jpg", "ImgSmall": "http://www.morningstar.com.tw/pic/0104347.jpg" },

    //最外層是Dictionary時,寫法用這樣。
     NSArray *json = [(NSDictionary *) [NSJSONSerialization JSONObjectWithData:responseData
     options:kNilOptions
     error:&error] objectForKey:@"NewBook"];
     
     
     
    
    
    //外層是Array就要用for去讀,每一輪讀取不同直,所以變數可以重複使用
    NSArray* json = [NSJSONSerialization JSONObjectWithData:responseData //1
                                                    options:kNilOptions
                                                      error:&error];
    
    dataArray = [NSJSONSerialization JSONObjectWithData:responseData //1
                                                options:kNilOptions
                                                  error:&error];
   for (NSDictionary *obj in json) {
        NSString *bookname =[obj valueForKey:@"BookName"];
        NSString *author   =[obj valueForKey:@"Author"];
        NSNumber *price    =[obj valueForKey:@"Price"];
        NSNumber *memprice =[obj valueForKey:@"MemPrice"];
        NSNumber *vipprice =[obj valueForKey:@"VipPrice"];

沒有留言:

張貼留言