如何parsing具有dynamic密钥节点的JSON

如何在iPhone中parsing下面的JSON。 关键node_10947可能每次都会改变。

任何想法 ?

{ "metadata": { "node_10947": { "nodeID": "10947", "objectID": "11121", "name": "Abc", "classIdentifier": "folder", "node_10948": { "nodeID": "10948", "objectID": "11122", "name": "Abc_A", "classIdentifier": "tag" }, "node_10951": { "nodeID": "10951", "objectID": "11123", "name": "Abc_b", "classIdentifier": "tag" }, "node_10952": { "nodeID": "10952", "objectID": "11125", "name": "Abc_c ", "classIdentifier": "tag" } }, "node_170": { "nodeID": "170", "objectID": "196", "name": "XYZ", "classIdentifier": "folder", "node_179": { "nodeID": "179", "objectID": "206", "name": "XYZ_a", "classIdentifier": "tag" }, "node_180": { "nodeID": "180", "objectID": "207", "name": "XYZ_b", "classIdentifier": "tag" }, "node_182": { "nodeID": "182", "objectID": "209", "name": "XYZ_c", "classIdentifier": "tag" } } } 

}

我有上面的JSON和关键节点可能随时改变请build议我如何parsing一个JSON的节点随时dynamic变化?

使用Ehab Amer指出的框架。 parsing你可以使用这个代码片段

 SBJsonParser *sbjasonObj=[[[SBJsonParser alloc]init] autorelease]; NSMutableDictionary *categoriesContainer = [[NSMutableDictionary alloc]initWithDictionary:[sbjasonObj objectWithString:result]]; 

结果是JSON作为你的。

如果你有可能修改这个JSON,那么在JSON中包含一个更多的键,这个键将保存当前键的值,如下所示:

{“metadata”:{currentKey:“node_10947}

然后使用该键访问由node_10947定义的值。

你可以使用一些像JSONKit这样的框架来parsingjson。