我試圖從目標c中的Twitter API獲取一些信息。從JSON數組中獲取內容
這是我的代碼來解析JSON和獲取信息:
-(void)getJSONData {
// Create new SBJSON parser object
SBJsonParser *parser = [[SBJsonParser alloc] init];
// Prepare URL request to download statuses from Twitter
NSString *url = [[NSString alloc] initWithFormat:@"http://search.twitter.com/search.json?geocode=52.13263,5.29127,1000km&result_type=recent&lang=nl&q=twitter&rpp=1"];
NSURL *scriptUrl = [NSURL URLWithString:url];
NSURLRequest *request = [NSURLRequest requestWithURL:scriptUrl];
// 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 *json_string = [[NSString alloc] initWithData:response encoding:NSUTF8StringEncoding];
NSString *combine = [[NSString alloc] initWithFormat:@"%@%@%@", @"[", json_string, @"]"];
// Here we're using NSArray since we're parsing an array of JSON status objects
NSArray *statuses = [parser objectWithString:combine];
// Each element in statuses is a single status
// represented as a NSDictionary
for (NSDictionary *status in statuses) {
NSLog(@"%@", [status objectForKey:@"results"]);
}
}
在控制檯中我得到這個回:
2013-02-15 21:23:06.294 JSON[9585:c07] (
{
"created_at" = "Fri, 15 Feb 2013 20:22:45 +0000";
"from_user" = "Utrecht_krant";
"from_user_id" = 465499012;
"from_user_id_str" = 465499012;
"from_user_name" = "Utrecht Nieuws";
geo = "<null>";
id = 302513299378036736;
"id_str" = 302513299378036736;
"iso_language_code" = nl;
location = Utrecht;
metadata = {
"result_type" = recent;
};
"profile_image_url" = "http://a0.twimg.com/profile_images/1759014211/Utrecht_normal.gif";
"profile_image_url_https" = "https://si0.twimg.com/profile_images/1759014211/Utrecht_normal.gif";
source = "<a href="http://twitterfeed.com">twitterfeed</a>";
text = "#Utrecht GO Prinselijk paar per trein naar Lech - NOS: Reformatorisch DagbladPrinselijk paar per trein naar Lech... http://t.co/SL1aNaKe";
"to_user" = "<null>";
"to_user_id" = 0;
"to_user_id_str" = 0;
"to_user_name" = "<null>";
}
)
這使我從對象的信息:"results"
。現在是我的問題:如何從陣列"results"
獲取對象?所以如果我想得到"from_user"
我如何在Objective C中需要這個?
在此先感謝。
他們是字典,來吧男:objectForKey: – CodaFi 2013-02-15 20:41:00
你看到評論«/ /狀態中的每個元素是一個單一的狀態 //表示爲一個NSDictionary»在**你的**代碼? – 2013-02-15 20:44:46
@Sebastiaan:*什麼*錯誤,告訴我們*什麼是錯的,所以我們可以幫助。你不能去找汽車修理工說「我聽到噪音,怎麼了?」 – dreamlax 2013-02-16 03:54:32