任何人都可以告诉我如何使用不同的密钥IOS解析JSON对象吗?

时间:2015-05-10 16:19:45

标签: ios objective-c iphone json

这里的Json对象Comment有不同的键,如1,2,3,4。通常A Json对象具有相同的键,如内部重要,isgoal,分钟等。如果我可以解析1,2,3,4那么很容易解析重要的,isgoal,分钟。但问题是我无法获得对象1,2,3,4。 IOS抛出无效的密钥异常.....

这是Json对象的一部分---

  • comm_commentaries:{

    • 评论:{

      • 1:{
         重要:“假”,
         isgoal:“假”,
         分钟:“90'”,
         评论:“尝试错失.Eliaquim Mangala(曼彻斯特城队)在禁区中心头球攻门偏出左门柱。助攻:JesúsNavas射门跟随角球。”,
         id:“8429441”
        },
      • 2:{
         重要:“假”,
         isgoal:“假”,
         分钟:“90'”,
         评论:“角球,曼城。肖恩赖特 - 菲利普斯承认。”,
         id:“8429402”
        },
      • 3:{
         重要:“假”,
         isgoal:“假”,
         分钟:“90'”,
         评论:“尝试被阻挡.Wilfried Bony(曼彻斯特城队)禁区中路右脚射门被挡。助攻:YayaTouré。”,
         id:“8429401”
         },
      • 4:{
         重要:“真实”,
         isgoal:“真实”,
         分钟:“87'”,
         评论:“进球!曼彻斯特城6,女王公园巡游者0.大卫席尔瓦(曼彻斯特城队)从近距离右脚射门,球从右下角射出。助攻:威尔弗里德·博尼带球直接。”,
         id:“8429400”
         },

      }
      }

1 个答案:

答案 0 :(得分:0)

我怀疑您使用数字1作为密钥,您应该使用字符串@"1",请发布失败的解析协议。 NSDictionary个密钥必须是实现NSCopying且最常见NSStrings的对象。

NSLog()的{​​p} NSDictionaries输出使用description`方法,该方法在不需要时省略引号。这使得理解输出更加困难。

NSString *isgoal = jsonObject[@"comm_commentaries"][@"comment"][@"1"][@"isgoal"]
NSString *minute = jsonObject[@"comm_commentaries"][@"comment"][@"1"][@"minute"]