如何从NSdictionary中提取以下信息?

时间:2011-03-17 05:49:52

标签: iphone nsdictionary

来自词典, key = key1 value1 = {email =“test1@yahoo.com”; firstname = Joe; lastname = Doe; sessionid =“a21ed5ba-5039-11e0-9768-7136bb0a01e4”; “user_type”= 1; }

key = key2 value2 = {email =“test2@yahoo.com”; 名字=丹; lastname =史密斯; sessionid =“a20ed5ba-7039-21e0-6868-7136bb0a01e4”; “user_type”= 2; }

换句话说,key1的值是一堆信息,而不仅仅是一个简单的字符串。

3 个答案:

答案 0 :(得分:1)

让值为用户定义类的数组或对象。

@interface User : NSObject
{
NSString * email, * firstName, * lastName, * sessionId;
int userType;
}

您可以创建此类的对象,并将其作为键值对在NSDictionary中插入。并将其取回。

User * user = [dict objectForKey:key1];

或者您可以在NSDictionary对象中插入NSDictionary并检索值。

NSDictionary * dict1 = [dict objectForKey:key1];
NSString * email = [dict1 objectForKey:@"email"];

希望这有帮助。

答案 1 :(得分:0)

这里似乎value1又是一个NSDictionary。因此value1是一个字典键,使用相应的键访问值。

答案 2 :(得分:0)

[dict objectForKey:key1]; will give you another NSDictionary. 

因此,如果您想要使用key作为key1从第一个字典访问电子邮件,您可以尝试

[[dict objectForKey:key1] objectForKey:@"email"];