2

我正在解析一个 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

我应该得到一个不。我做错了什么?

4

1 回答 1

4

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

[[responseObject valueForKeyPath:@"success"] boolValue]? @"YES" : @"NO"
于 2012-06-29T03:21:26.743 回答