1
這是來自服務器的JSON:ios解析包含數組的json?
{
"name":"channelname",
"args":
[
{
"username":"myusername",
"message":"mymessage"
}
]
}
使用的iOS5內置JSON方法我嘗試解析出ARGS的用戶名/消息。
NSDictionary *JSON = [NSJSONSerialization JSONObjectWithData: [packet.data dataUsingEncoding:NSUTF8StringEncoding] options: NSJSONReadingMutableContainers error: nil];
NSDictionary *argsValues = [[NSDictionary alloc] initWithDictionary:[JSON objectForKey:@"args"]];
第二行拋出一個錯誤:
dictionary argument is not an NSDictionary
當我的NSLog [JSON objectForKey @ 「ARGS」]我得到:
(
{
message = mymessage;
username = myusername;
}
)
我認爲括號中打破它,不要不知道他們從哪裏來,幫助表示讚賞。
編輯:
由於選擇的答案,這裏是我用來獲取ARGS鍵的代碼。
NSDictionary *JSON = [NSJSONSerialization JSONObjectWithData: [packet.data dataUsingEncoding:NSUTF8StringEncoding] options: NSJSONReadingMutableLeaves error: nil];
NSArray *argsArray = [[NSArray alloc] initWithArray:[JSON objectForKey:@"args"]];
NSDictionary *argsDict = [[NSDictionary alloc] initWithDictionary:[argsArray objectAtIndex:0]];
NSLog(@"keys = %@", [argsDict allKeys]);