我試圖使用foursquare API獲取附近的地方。 下面是從解析由iPhone的foursquare返回的json給出無法識別的主角
NSDictionary *results = [jsonString JSONValue];
NSLog(@"%@", results);
(
{
code = 200;
errorDetail = "This endpoint will stop returning groups in the future. Please use a current version, see http://bit.ly/lZx3NU.";
errorType = deprecated;
},
{
groups = (
{
items = (
{
categories = (
{
icon = "https://foursquare.com/img/categories/parks_outdoors/default.png";
id = 4bf58dd8d48988d163941735;
name = Park;
parents = (
"Great Outdoors"
);
pluralName = Parks;
primary = 1;
shortName = Park;
}
);
返回JSON數據。然後我試圖讓該組列表中的陣列
NSArray *groups = [ (NSDictionary *)results objectForKey:@"groups"];
這將返回以下錯誤
2011-11-05 11:42:12.907 XperienzApp[1972:207] No of results returned: 0 Results : (null)
2011-11-05 11:42:13.225 XperienzApp[1972:207] -JSONValue failed. Error trace is: (
"Error Domain=org.brautaset.JSON.ErrorDomain Code=3 \"Unrecognised leading character\" UserInfo=0x5849cd0 {NSLocalizedDescription=Unrecognised leading character}"
)
2011-11-05 11:42:13.225 XperienzApp[1972:207] No of results returned: 0 Results : (null)
如何我應該解析這個嗎?
編輯: 我嘗試了建議的技術,這給了我一個數組
id groups = [[(NSDictionary *)results objectForKey:@"response"] objectForKey:@"groups"];
if ([results count] > 1){
NSLog(@"groups class %@\ngroups %@ %d", groups, [groups class], [groups count]);
日誌輸出的形式爲:
{
categories = (
{
icon = "https://foursquare.com/img/categories/nightlife/danceparty.png";
id = 4bf58dd8d48988d11f941735;
name = Nightclub;
parents = (
"Nightlife Spots"
);
pluralName = Nightclubs;
primary = 1;
shortName = Nightclub;
}
);
contact = {
};
hereNow = {
count = 0;
};
id = 4eb33ba561af0dda8f673c1b;
location = {
address = "144 Willow St 4R";
city = Brooklyn;
crossStreet = Pierrepont;
distance = 462;
lat = "40.696864";
lng = "-73.996409";
postalCode = 11201;
state = NY;
};
name = "Entertainment 720, Ltd.";
stats = {
checkinsCount = 3;
tipCount = 0;
usersCount = 1;
};
verified = 0;
}
);
name = Nearby;
type = nearby;
}
)
groups __NSArrayM 1
這又不是JSON和難以解析,我如何在json中獲得輸出。
我會試試這個並回傳結果。 – nikhil