exception 'NSInvalidArgumentException':-[__NSArrayM objectForKey:]: unrecognized selector sent to instance 0x752c670 [duplicate]

StackOverflow https://stackoverflow.com/questions/18270499

  •  24-06-2022
  •  | 
  •  

Pergunta

I use sbjson to parse json, this is the Json I'm trying to parse :

{"R":"0","S":"","T":"","M":[{"C00":"2013-08-16 17:35:03"}]}

and this is my code:

NSString *response = [self post:@"9903" content:payload state:@""];
NSDictionary *dict = [response JSONValue];
NSString *result = [dict objectForKey:@"R"];
NSLog(@"result=%@",result);
if ([@"0" isEqualToString:result]) {
    NSDictionary *msg = [dict objectForKey:@"M"];
    NSString *C00 = [msg objectForKey:@"C00"];//here the exception Statement
    NSString *tokenString = [NSString stringWithFormat:@"%@",C00];
    NSLog(@"tokenString%@",tokenString);
    return tokenString;
}else {
    return nil;
}

the exception log:

2013-08-16 17:45:44.902 VEP[4731:c07] -[__NSArrayM objectForKey:]: unrecognized selector    sent to instance 0x7250300
2013-08-16 17:45:44.903 VEP[4731:c07] *** Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: '-[__NSArrayM objectForKey:]: unrecognized selector sent to instance 0x7250300'

what's wrong? thanks for your help!

Foi útil?

Solução

Because your key 'M:' contain array of dictionary not only dictionary. So, write it as a,

NSDictionary *msg = [[dict objectForKey:@"M"] objectAtIndex:0];
Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top