【问题标题】:JSON Parse objective cJSON解析目标c
【发布时间】:2011-05-09 16:26:59
【问题描述】:

我得到了下一个 json 代码:

{

"person_1":{
      "name" :"person",
      "pictures":[ 
                  {"images":{
                             "picture_1": "url1",
                             "picture_2": "url1",
                            }
                  }
               ],
}
}

谁能告诉我如何获取元素“picture_1”? 我将 touchJson 用于目标 c。

最好的问候

【问题讨论】:

  • 请阅读文档。

标签: iphone objective-c json parsing touchjson


【解决方案1】:

首先,我推荐使用yajl,因为我发现它对我的工作非常方便。

NSBundle * personBundle = [[yourstring yajl_JSON] valueForKey:@"person_1"];
NSArray * picturArray = [personBundle valueForKey:"pictures"];
NSBundle * imagesBundle = [picturArray objectAtIndex:0];
NSString * myUrl = [imagesBundle valueForKey:"picture_1"];

这应该差不多了。

【讨论】:

  • 我认为您的意思是 NSDictionary*,而不是 NSBundle*
  • 在这种情况下使用 valueForKeyPath 更简洁。
  • @Fiorze Lafeer @nonamelive - 我不是 Objectie-C 专家(甚至没有接近)所以我以我实现它的方式展示了它,所以首先,感谢您的评论,其次,如果您不介意,请详细说明第三点,我发现仅通过阅读文档很难从新事物开始,并且一个示例可以帮助很多次,并且由于没有人回答-我接受了。最后,如果您有更好的方法,我会非常非常高兴看到您的答案并从中学习。
  • 首先,感谢您的回答.. 它的工作!但我必须像这样在数组之后创建另一个 NSDictionary:
  • NSDictionary *item_1 = [resultsDictionary objectForKey:@"person_1"]; NSArray *node_images =[item_1 objectForKey:@"pictures"]; NSDictionary *files = [[node_images objectAtIndex:0] objectForKey:@"images"]; NSString * stri = [文件 objectForKey:@"picture_1"]; NSString * stri = [文件 objectForKey:@"preview"];
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2011-10-22
  • 2011-05-13
  • 1970-01-01
相关资源
最近更新 更多