Логическое значение SBJsonParser на iPhone - PullRequest
0 голосов
/ 16 января 2011

Я не могу понять, как обрабатывать это значение JSON, используя SBJsonParser в Objective-C.
JSON возвращается как "success":true (внутри более крупного объекта JSON).
Он анализируется нормально, и когда ясделайте "po" на нем, как это po [jsonObject objectForKey:@"success"] результат просто 1.
Хотя я пытаюсь выяснить, как проверить это в выражении IF.Я попытался сделать == 1, == true, == TRUE, == YES и == [NSNumber numberWithInt:1], все из которых возвращают false.

Как в мире я могу это проверить?

1 Ответ

7 голосов
/ 16 января 2011

SBJSON возвращает логические значения как NSNumber экземпляры, созданные с +numberWithBool: (базовые данные 0 для false, 1 для true). Вы можете получить эквивалентное значение BOOL, отправив им -boolValue. Например,

BOOL success = [[jsonObject objectForKey:@"success"] boolValue];
if (success)
{
    NSLog(@"yay!");
}
else
{
    NSLog(@"oops");
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...