2

我目前正在开发一个从以下来源获取数据的 iPhone 应用程序:

我试图弄清楚如何在文本字段中将其解析为人类可读的格式。

到目前为止,我的代码是:

#import "ViewController.h"

@interface ViewController ()

@end

@implementation ViewController

- (void)viewDidLoad
{
    [super viewDidLoad];
    NSString *urlString = [NSString stringWithFormat:@"http://dev.threesixtyapp.com/api/events.php?action=available&id=1"];
    NSURL *url =[NSURL URLWithString:urlString];
    NSData *data = [NSData dataWithContentsOfURL:url];
    NSError  *error;
    NSMutableDictionary *json = [NSJSONSerialization JSONObjectWithData:data options:kNilOptions error:&error];
    NSLog(@"%@",json);
}
4

2 回答 2

2

http://stig.github.com/json-framework/ - SBJson 是一个很棒的 JSON 编码/解码框架。我建议您检查一下...它将为您解析为 NSDictionary,您只需将文本字段的文本设置为您想要的 NSDictionary 中的值。使用这个框架非常简单。顺便说一句,当您将 Json 传递给 SBJson 函数时,您的 Json 应该只是一个字符串

于 2012-07-09T13:59:16.183 回答
2

首先你要了解你的json的数据结构。
您可以使用JSON Viewer查看 json 的数据结构。
正如我所看到的,您正在获取由和组成event_title的对象数组。date_fromdate_to

NSError *error = nil;
NSArray *jsonArry = [NSJSONSerialization JSONObjectWithData:data options:kNilOptions error:&error];
NSLog(@"%@",jsonArry);
for (NSDictionary *dict in jsonArry) {
    NSString * title = [dict objectForKey:@"event_title"];
    NSString * dateTo = [dict objectForKey:@"date_to"];
    NSString * dateFrom = [dict objectForKey:@"date_from"]; 
    NSLog(@"title=%@,dateTo=%@,dateFrom=%@",title,dateTo,dateFrom);
}
于 2012-07-09T15:19:45.520 回答