iPhone JSON解析
我是iPhone应用开发新手。 我需要一些帮助...我想解析一些数据(银行名称)并将它们显示为UITableView
。我使用这个代码来解析银行名称这是JSON
格式:iPhone JSON解析
NSArray *atmDAta = [responseString JSONValue];
for (NSDictionary *dict in atmDAta) {
NSLog(@"%@", [dict objectForKey:@"Name"]);
[listOfItems addObject:[dict objectForKey:@"Name"]];
}
但是当我尝试向他们展示在表是这样的:
cell.textLabel.text = [listOfItems objectAtIndex:indexPath.row];
return cell;
这会告诉我没什么表但NSlog正在工作,并显示我在xcode日志中的银行名称。请帮忙。
请参考此代码为JSON解析
-(void)getLatestScore
{
SBJsonParser *parser = [[SBJsonParser alloc] init];
NSURLRequest *request = [NSURLRequest requestWithURL:[NSURL URLWithString:@"http://json-cricket.appspot.com/score.json"]];
// Perform request and get JSON back as a NSData object
NSData *response = [NSURLConnection sendSynchronousRequest:request returningResponse:nil error:nil];
// Get JSON as a NSString from NSData response
NSString *str_Json_String = [[NSString alloc] initWithData:response encoding:NSUTF8StringEncoding];
// parse the JSON response into an object
NSDictionary *dicCricketScore = [parser objectWithString:str_Json_String error:nil];
lblDate.text = [dicCricketScore objectForKey:@"date"];
lblMatch.text = [dicCricketScore objectForKey:@"match"];
lblBattingTeam.text = [dicCricketScore objectForKey:@"batting_team"];
lblScore.text = [dicCricketScore objectForKey:@"score"];
lblSummary.text = [dicCricketScore objectForKey:@"summary"];
}
从这个代码,你会从JSON解析得到最新板球得分....
你好Mehul Mistry ......很多thanX这个,但我已经解析数据到标签....现在我只需要解析数据并将其显示到UITableView中 – Rocky 2011-05-16 10:53:13
你在哪里存储数据...... NSMutableArray或其他... – 2011-05-16 11:01:50
@ Rocky试试这个试试
声明在.h NSArray * listOfItems;
@property (nonatomic, copy)NSArray *listOfItems;
,并使用这.M
NSMutableArray *tempArray = [[NSmutableArray alloc]initWithCapacity:[atmDAta count]];
for (NSDictionary *dict in atmDAta) {
NSLog(@"%@", [dict objectForKey:@"Name"]);
if (![dict valueForKeyIsNull:@"Name"]) {
[tempArray addObject:[dict objectForKey:@"Name"]];
}
}
self.listOfItems = [NSArray arrayWithArray:tempArray];
[tempArray release];
if([self.listOfItems count] > 0)
[yourTable reloadData];
当我使用的是分类
@implementation NSDictionary (KeyExists)
- (BOOL) keyExists:(NSString *) key {
return [self valueForKey:key] != nil;
}
- (BOOL) valueForKeyIsNull:(NSString *) key {
return ![self keyExists:key] || ((NSNull *)[self valueForKey:key] == [NSNull null]);
}
@end
干杯!
加入数组,你可以做后[LISTOFITEMS保留]
莫非你一些你的代码? ListOfItem是否保持正确?当你完成分析时,它是否有任何项目?或者是你插入一个空字符串的名字? – rckoenes 2011-05-16 10:28:32
'code' NSMutableArray * listOfItems; – Rocky 2011-05-16 10:33:04
Yaeh我保留正确 – Rocky 2011-05-16 10:40:52