Я хочу разобрать строку C в NSDictionary. Следующий код отлично работает при компиляции под OS X, но приводит к ошибке «Ошибка анализа JSON» при использовании в Ubuntu 14.04 LTS с GNUStep 7.7. Ошибка возникает только для значений bool (true, false), но работает для чисел и строк.Разбор JSON в NSDictionary с GNUStep не работает для Booleans
Есть ли у вас какие-либо идеи, что может быть проблемой или как я могу совершить кругосветное путешествие?
#import <Foundation/Foundation.h>
int main(int argc, const char * argv[]) {
NSAutoreleasePool *pool = [[NSAutoreleasePool alloc] init];
//const char* str = "{\"result\":\"foo\"}"; //works
const char* str = "{\"result\":true}"; //doesn't work
NSData* data = [NSData dataWithBytes:str length:strlen(str)];
NSError *err = nil;
NSDictionary *dic = [NSJSONSerialization JSONObjectWithData:data options:0 error:&err];
if(err != nil)
//Output: "Err: JSON Parse error"
NSLog(@"Err: %@",err);
else
NSLog(@"Dic: %@",dic);
[pool drain];
return 0;
}
Где вы узнали об ошибке? Как выглядит JSON? –
@HotLicks Я положил JSON в пример выше ({"result": true}). Ошибка возникает при вызове '[NSJSONSerialization JSONObjectWithData]' и 'err' (вывод:« Ошибка Err: JSON Parse ») – muffel