Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ios/104.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/objective-c/23.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ios 有人能告诉我如何用不同的键解析JSON对象吗?_Ios_Objective C_Iphone_Json - Fatal编程技术网

Ios 有人能告诉我如何用不同的键解析JSON对象吗?

Ios 有人能告诉我如何用不同的键解析JSON对象吗?,ios,objective-c,iphone,json,Ios,Objective C,Iphone,Json,这里的Json对象注释有不同的键,如1,2,3,4。通常一个Json对象具有相同的键,如内部部分的important、isgoal、minute等。如果我可以解析1、2、3、4,那么解析important、isgoal、minute就很容易了。但问题是我不能得到对象1,2,3,4。IOS引发无效的密钥异常 下面是Json对象的一部分-- comm_评论:{ 评论:{ 1:{ 重要提示:“错误”, isgoal:“假”, 分钟:“90'” 评论:“尝试未遂。埃利亚基姆·曼加拉(曼城)从禁区中

这里的Json对象注释有不同的键,如1,2,3,4。通常一个Json对象具有相同的键,如内部部分的important、isgoal、minute等。如果我可以解析1、2、3、4,那么解析important、isgoal、minute就很容易了。但问题是我不能得到对象1,2,3,4。IOS引发无效的密钥异常

下面是Json对象的一部分--

  • comm_评论:{

    • 评论:{

      • 1:{
        重要提示:“错误”,
        isgoal:“假”,
        分钟:“90'”
        评论:“尝试未遂。埃利亚基姆·曼加拉(曼城)从禁区中心向左侧头球未遂。由耶斯·纳瓦斯助攻,角球后传中。”,
        id:“8429441”
        },
      • 2:{
        重要提示:“错误”,
        isgoal:“假”,
        分钟:“90'”
        评论:“曼城角球,肖恩·赖特·菲利普斯认输。”,
        id:“8429402”
        },
      • 3:{
        重要提示:“错误”,
        isgoal:“假”,
        分钟:“90'”
        评论:“尝试被阻挡。威尔弗里德·博尼(曼城)从禁区中心的右脚射门被阻挡。由亚亚·图雷协助。”,
        id:“8429401”
        },
      • 4:{
        重要提示:“正确”,
        isgoal:“正确”,
        分钟:“87'”
        评论:“进球!曼城6号,皇后公园游骑兵队0号。大卫·席尔瓦(曼城)右脚射门,从非常近的距离射入右下角。威尔弗里德·博尼助攻,传球。”,
        id:“8429400”
        },
      }
      }


我怀疑您正在使用编号
1
作为密钥,您应该使用字符串
@“1”
,请发布失败的解析代码
NSDictionary
键必须是实现
NSCopying
的对象,并且是最常见的
NSStrings

NSLog()。这使得理解输出更加困难

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

问题是什么?这里的Json对象注释有不同的键,比如1,2,3,4。通常一个Json对象具有相同的键,如内部部分的important、isgoal、minute等。如果我可以解析1、2、3、4,那么解析important、isgoal、minute就很容易了。但问题是我不能得到对象1,2,3,4。IOS引发无效的密钥异常。。。。。请帮助改进问题。答案是JSON无效。键必须是字符串。最好的解决方案是在源头解决这个问题。不管生成的是什么样的JSON,请尝试修复它,以便它提供有效的JSON。@danh如果这是NSLog()输出,则引号将被description方法去掉。苹果公司的错误选择,斯威夫特正确地显示了。我想还是很值得@Shawon91Sust-你明白为什么人们在提供帮助时遇到困难了吗?