将数组内容正确存储到带有键的字典中

Posted

技术标签:

【中文标题】将数组内容正确存储到带有键的字典中【英文标题】:storing array content into dictionary with keys properly 【发布时间】:2013-02-05 16:21:16 【问题描述】:

我有这个:

NSURL *url = [NSURL URLWithString:@"http://www.ios.com/ios/responseScript.php"];
NSError *error = nil;
NSURLRequest *request = [NSURLRequest requestWithURL:url];
NSData *data = [NSURLConnection sendSynchronousRequest:request returningResponse:NULL error:&error];
NSMutableArray *someArray = [NSJSONSerialization JSONObjectWithData:data options:0 error:&error];
NSLog(@"Array Retrieved: %@", someArray);

它显然是从站点获取 json 数据。 PHP 数组是这样创建的:

$simpleProduct = array("John"=>"Employee","Jane"=>"Student","Jhonson"=>"Somejob","Mike"=>"Nothing");
echo json_encode($simpleProduct);

上面的objective-c代码打印出来的结果是这样的:

2013-02-05 19:17:37.910 testProducts[26786:c07] 检索到数组: 简=学生; Jhonson = 一些工作; 约翰 = 员工; 迈克 = 没有;

现在我希望将这些数据插入到字典 (NSMutableDictionary) 中,例如简是关键,学生是价值。对于所有其他对,依此类推。

如何做到这一点?

我是 iOS 开发的新手 :)

【问题讨论】:

试试这个 NSMutableDictionary *dict = [NSJSONSerialization JSONObjectWithData:data options:0 error:&error]; 【参考方案1】:

为什么不直接得到这样的结果

NSDictionary *someDictionary = [NSJSONSerialization JSONObjectWithData:data options:0 error:&error];

它让你的生活更轻松,并且只需通过这样的键访问值

NSString *jane= [someDictionary objectForKey:@"Jane"];

【讨论】:

神圣代码!这正是我想要的。谢谢 :) 我想一开始我只是被 NSMutableArray 弄糊涂了 不客气:) 如果对您的事业有帮助,您可以接受答案:)

以上是关于将数组内容正确存储到带有键的字典中的主要内容,如果未能解决你的问题,请参考以下文章

将带有数字键的数据插入 mongodb 时出错(python 字典中的 GPS 数据)

如何将数组中键的值添加到字典中? [关闭]

带有向量作为键的 STL 映射

两个带有json键的数组[重复]

从数组值中过滤字典

Rails 无法正确解码来自 jQuery 的 JSON(数组变成带有整数键的散列)