如何在解析json时将字符串存储在数组中

时间:2011-08-02 11:42:53

标签: iphone objective-c xcode

我正在使用SBJSON解析一个json url,一切正常。问题是如果m要解析标签“title”或基本上任何其他标签并将其存储在名为story的数组中..我只能获取包含标签的最后一个值而不是存储在名为的数组中的整个值列表下面的故事是代码..

- (void)viewDidLoad {
[super viewDidLoad];
jsonurl=[NSURL URLWithString:@"http://www.1040communications.net/sheeba/stepheni/iphone/stephen.json"];
jsonData=[[NSString alloc]initWithContentsOfURL:jsonurl];
jsonArray = [jsonData JSONValue]; 

items = [jsonArray objectForKey:@"items"];
for (NSDictionary *item in items )
{
    story = [NSMutableArray array];
    description1 = [NSMutableArray array];

    [story addObject:[item objectForKey:@"title"]];
    [description1 addObject:[item objectForKey:@"description"]];


}
 NSLog(@"booom:%@",story);}

2 个答案:

答案 0 :(得分:1)

这一行应该在for循环之外

 story = [NSMutableArray array];

正在为字典中的每个项目创建NSMutableArray,因此您只获取最后一个值。因此,您需要在输入for循环之前创建字典。

答案 1 :(得分:1)

应在循环开始之前声明storydescription1