JSON到NSMutableArray iOS

JSON到NSMutableArray iOS,ios,objective-c,json,afnetworking,afnetworking-2,Ios,Objective C,Json,Afnetworking,Afnetworking 2,作为对请求的响应,我得到JSON: { "letters": { "A": 0, "B": 1, "C": 2, "D": 3, "E": 4, ... } } 这是我获取此JSON的代码: NSURLRequest *request = [NSURLRequest requestWithURL:[NSURL URLWithString:url]]; AFHTTPRequestOpe

作为对请求的响应,我得到JSON:

{
    "letters": {
        "A": 0,
        "B": 1,
        "C": 2,
        "D": 3,
        "E": 4,
        ...
    }
}
这是我获取此JSON的代码:

NSURLRequest *request = [NSURLRequest requestWithURL:[NSURL URLWithString:url]];
AFHTTPRequestOperation *operation = [[AFHTTPRequestOperation alloc] initWithRequest:request];
operation.responseSerializer = [AFJSONResponseSerializer serializer];
[operation setCompletionBlockWithSuccess:^(AFHTTPRequestOperation *operation, id responseObject) {

NSLog(@"%@", responseObject);

} failure:^(AFHTTPRequestOperation *operation, NSError *error) {
    // Handle error
}];
我想用键(而不是值)填充数组,如下所示:

数组[0]=“A”

数组[1]=“B”
…?

我还没有测试代码。但它应该与此类似:

NSDictionary *responseDictionary = (NSDictionary*)responseObject;

NSDictionary *letters = [responseDictionary objectForKey:"letters"];
NSMutableArray *lettersArray = [[NSMutableArray alloc]init];


if ( letters ){

for (NSInteger i = 0; i < letters; ++i)
{
  [lettersArray addObject:[NSNull null]];
}
[letters enumerateKeysAndObjectsWithOptions:NSEnumerationConcurrent
                          usingBlock:^(id key, id object, BOOL *stop)     {
   [lettersArray replaceObjectAtIndex:[key integerValue] withObject:object]
}]

}
NSDictionary*responseDictionary=(NSDictionary*)responseObject;
NSDictionary*字母=[responseDictionary objectForKey:“字母”];
NSMUTABLEARRY*字母数组=[[NSMUTABLEARRY alloc]init];
如有(信件){
对于(NSInteger i=0;i
尝试以下代码

NSDictionary *letters = [responseObject objectForKey:"letters"];
NSArray *lettersArray = [letters allKeys];

由于您已经在使用JSON响应序列化程序,responseObject应该是一个字典

要获取子字典
字母的所有键,请执行以下操作

NSArray *letters = [reponseObject[@"letters"] allKeys];
这里不需要可变数组。但如果你想让它变,那就做吧

NSMutableArray *letters = [[reponseObject[@"letters"] allKeys] mutableCopy];

可能重复@sobolevn错误示例…@benji google it buddy。比起世界上所有海滩上的沙粒,你尝试做的事情还有更多的例子:假设,使用什么代码来获得响应并不重要;是的,这也可以做到,但我发现用户是新的,所以我用简单的方式写了它。真的谢谢你们。做不必要的事情怎么会更简单呢?这里用户不希望0索引上有“A”,而是希望索引上有一个作为它的值。
NSMutableArray *letters = [[reponseObject[@"letters"] allKeys] mutableCopy];