2012-03-30 9 views
1

Ich bekomme einen JSON-Dienst, für den ich Vergleichsprüfungen auf die Werte bestimmter Schlüssel vornehmen möchte. Zum Beispiel habe ich einen Schlüssel 'Status' in JSON-Array, aber ich bin nicht in der Lage, eine Vergleichsprüfung für den Wert durchzuführen. Die Antwort ist wie:Vergleichen Sie die Tasten von JSON Service Antwort

{"status":400,"response":"No cast found"} 

ich, wie etwas zu tun:

if([jsonDict objectForKey:@"status"] == @"400"){ 
.. 
} 

aber die Kontrolle nicht funktionieren, was ist der richtige Weg, es zu tun?

Antwort

3

Es kann zwei Dinge:

Wenn [jsonDict objectForKey: @ "Status"] wird Ihnen ein NSString zu geben, dann ist die richtige Art und Weise zu vergleichen ist:

if([[jsonDict objectForKey:@"status"] isEqualToString:@"400"]) 

Wenn [jsonDict objectForKey: @ "Status"] gibt Ihnen eine NSNumber oder NSDecimalNumber:

if([[jsonDict objectForKey:@"status"] isEqualToNumber:[NSNumber numberWithInt:400]) 
+1

mehr erarbeitet als meine Antwort. Ich mag es. :) –

2

Versuchen Sie, diese

if([jsonDict objectForKey:@"status"] isEqualToString @"400"){ 
.. 
} 
1

Sie können es auch tun, auf diese Weise:

if([[jsonDict objectForKey:@"status"] intValue] == 400){ 
//your code here 
}