我的iPhone應用程序正在從PHP網站抓取JSON對象。PHP與Objective-C之間的JSON對象
PHP站點上的對象具有多個整數屬性。
被從數據庫中檢索從數據庫(在那裏它們被存儲爲INT
)回來像這樣在JSON性能:"seatedplayers":"3"
了在在PHP代碼看起來像這樣修改的屬性該JSON:"currentseat":1
在我的對象 - 我使用的是NSNumberFormatter正確格式化它們像這樣:
[numFormatter numberFromString:[jsonObject objectForKey:@"seatedplayers"]];
(JSONObject的是NSDictionary
)
該代碼可以在引用值的周圍的屬性上正常工作,但對其他引用無效。如果我在我的Objective-C代碼中添加stringValue
,它適用於不帶引號的屬性,但不帶引號。
現在,我的大問題在於,這個應用程序需要與我不親自編寫的站點進行通信,因此Objective-C中的哪些代碼可以編寫來處理這兩個實例?
編輯
這是我得到的NSDictionary的JSONObject。
- (NSDictionary *) getJSONObjectFromWebAddress:(NSString *) address {
// Prepare the URL Request
NSURLRequest *request = [NSURLRequest requestWithURL:[NSURL URLWithString:address]];
// Perform the request, expecting JSON back
NSData *responseData = [NSURLConnection sendSynchronousRequest:request returningResponse:nil error:nil];
NSString *responseString = [[NSString alloc] initWithData:responseData encoding:NSUTF8StringEncoding];
NSError *error;
SBJsonParser *parser = [[SBJsonParser new] autorelease];
NSDictionary *jsonObject = [parser objectWithString:responseString error:&error];
if (!jsonObject) {
NSLog(@"%@", error);
}
[responseString release];
return jsonObject;
}
stringValue是什麼?你是如何獲得帶有json值的NSDictionary的?我個人會使用NSScanner,或者用純C編寫一些東西。 – 2011-01-29 01:53:50
添加了如何將它作爲NSDictionary添加到問題的答案。我會查找NSScanner,因爲我不知道它是什麼。 – 2011-01-29 02:08:13