获取NSArray键值

时间:2012-05-12 17:22:57

标签: ios json

我仍然使用客观的c代码(PHP背景)。所以我正在构建这个连接到Web服务的iPhone应用程序。到目前为止,我已经设法检索JSON结果并通过SBJson解析它。但是我的问题是数组看起来或多或少像这样:

MP = {
        name = "Muscle Power";
        desc = "";
        price = "100";
     };
A9 = {
        name = "Armotech 9000";
        desc = "";
        price = "200";
     };
T10 = {
        name = "Titanium 10";
        desc = "";
        price = "300";
      };

如何获取密钥的值?因为它们是每个项目的代码。 计划在UITableview中显示它。

2 个答案:

答案 0 :(得分:2)

首先,您所指的数据结构是字典,或Objective-C中的NSDictionary。虽然许多语言使用术语array来引用对象列表,但PHP arrays是带有键和值的有序映射。

NSDictionary提供了一个名为allKeys的方法,该方法返回字典中的NSArray个键。例如:

// Create a dictionary for the purposes of this example.
NSDictionary *dict = [NSDictionary dictionaryWithObjectsAndKeys:
                      @"one", @"key1",
                      @"two", @"key2",
                      nil];
NSLog(@"%@", [dict allKeys]); // => ("key1", "key2")

虽然这个答案并非特定于SBJson,但如果我没记错,JSON结果会在该库中作为NSDictionary对象返回,因此您应该可以使用allKeys。希望这有帮助!

答案 1 :(得分:0)

您可以使用自定义对象here 尝试一下,让我知道它是否有帮助。