我正在解析JSON字符串:

Response: {"success":false,"displaymessage":"UserName or Email already exist. Please try again"}

我使用的代码是:
  NSLog(@"Result: %@ %@", [responseObject valueForKeyPath:@"success"]? @"YES" : @"NO", [responseObject valueForKeyPath:@"displaymessage"]);

但是我的输出是:
Result: YES UserName or Email already exist. Please try again

我应该得到一个编号。我在做什么错?

最佳答案

valueForKeyPath:方法返回一个始终为nil的对象(因此,您看到的是YES而不是NO)。如果我没记错的话,布尔值会包裹在NSNumber中。您应该从valueForKeyPath:返回的对象中提取实际的布尔值,如下所示:

[[responseObject valueForKeyPath:@"success"] boolValue]? @"YES" : @"NO"

10-08 02:43