Что не так с моим использованием JSONKIT декодирования в Objective-C? - PullRequest
0 голосов
/ 06 ноября 2011

У меня есть файл:

{
    "MapName" : "This is map1";
}

, который я пытаюсь прочитать с помощью:

- (id)initFromFile:(NSString *)mapName
{
    self = [super init];
    if (self) {

        NSString* path = [[NSBundle mainBundle] pathForResource:mapName ofType:@"json"];
        NSData* jsonData = [NSData dataWithContentsOfFile:path];
        assert(jsonData);
        JSONDecoder* decoder = [[JSONDecoder alloc]
                                initWithParseOptions:JKParseOptionNone];
        assert(decoder);

        NSDictionary* json = (NSDictionary*)[decoder objectWithData:jsonData];

        assert(json);

        NSString* mapName = (NSString*)[json objectForKey:@"MapName"];

        assert(mapName);

        printf("MapName: %s\n", [mapName UTF8String]);
    }

    return self;
}

, который не выполняется при утверждении (json);Есть ли что-то очевидное, что я делаю неправильно?

Я знаю, что файл читается нормально, но декодирование возвращается обратно в NULL.

Спасибо

1 Ответ

0 голосов
/ 06 ноября 2011

используйте запятую вместо точки с запятой

{
    "MapName" : "This is map1",
}

Подтвердите здесь jsonlint.com

...