Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/iphone/37.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何在iphone中解析具有特定键的数组_Iphone_Objective C_Nsarray_Nsdictionary_Fql.multiquery - Fatal编程技术网

如何在iphone中解析具有特定键的数组

如何在iphone中解析具有特定键的数组,iphone,objective-c,nsarray,nsdictionary,fql.multiquery,Iphone,Objective C,Nsarray,Nsdictionary,Fql.multiquery,我有一个数组(结果),它在控制台上显示输出,如下所示。我得到的结果是facebook多查询输出。这里是结果的定义 -(void)请求:(FBRequest*)请求加载:(id)结果{ NSLog(@“结果为%@”,结果) } 我的多重查询在这里 NSString*fql1=[NSString stringWithFormat:@“从用户中选择uid、用户名和名称,其中uid=%lld”,_session.uid] NSString*fql2=[NSString stringWithFormat:

我有一个数组(结果),它在控制台上显示输出,如下所示。我得到的结果是facebook多查询输出。这里是结果的定义

-(void)请求:(FBRequest*)请求加载:(id)结果{

NSLog(@“结果为%@”,结果)

}

我的多重查询在这里

NSString*fql1=[NSString stringWithFormat:@“从用户中选择uid、用户名和名称,其中uid=%lld”,_session.uid]

NSString*fql2=[NSString stringWithFormat:@“选择喜欢的,来自源\u id=%lld limit 50”的流的消息,\u session.uid]

NSString*查询=[NSString stringWithFormat:@“{\”UserRecord\”:\“%@\”,\“WallData\”:\“%@\”}”,fql1,fql2]

NSDictionary*params=[NSDictionary Dictionary WithObject:queries forKey:@“queries”]

[[FBRequestRequestWithDelegate:self]调用:@“facebook.fql.multiquery”参数:params]

result is (

{

"fql_result_set" =  (

                {

        name = "My Login Name";

        uid = 1000024646062353;

        username = myuserid;

    }

);

name = UserRecord;

},

{

"fql_result_set" =   (

                {

        likes =  {

            "can_like" = 1;

            count = 2;

            friends =  (

                         {
                    uid = 100002483363608;

                }

            );

  href = "http://www.facebook.com/browse/?type=likes&id=108202343353";

 sample =  (

            );
            "user_likes" = 1;

        };

        message = "This wall post is not from application.";
  },


);

name = WallData;

}

)
我想创建一个只保留“message”值的函数,另一个保持消息中的“count”值。如何将这些值与上面的数组输出分开

编辑版本:

NSString *messageString = [[[[result objectAtIndex:1]objectForKey:@"fql_result_set" ] objectAtIndex:0] objectForKey:@"message"];
NSnumber *countNumber = [[[[[result objectAtIndex:1]objectForKey:@"fql_result_set" ] objectAtIndex:0] objectForKey:@"likes"] objectForKey:@"count"];

你是如何得到这个结果的?是json吗?@Irene,我编辑了我的问题。请看一看,我已经编辑了我添加的答案,但我在上面一行中得到了SIGABRT错误。当我运行它时。这是控制台日志-[\uu NSArrayM JSONValue]:发送到实例0x4e37cc0 2011-07-07 13:30:30.507 FavesApplication[1607:207]***由于未捕获的异常“NSInvalidArgumentException”而终止应用程序,原因:'-[\uu NSArrayM JSONValue]:发送到实例0x4e37cc0的未识别选择器'您的结果不是NSString是NSArray。所以你不需要把它放到字典里。我将编辑我的帖子。请解释一下,我如何知道数组中的邮件总数?提前谢谢。如果你给我举个例子,我可以试试。[数组计数]