我有一个文件:
{
"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;
}
在assert(json)失败; 有什么明显的我做错了吗?
我知道文件正在读取正常但解码正在传回NULL。
由于
答案 0 :(得分:0)
使用逗号而不是分号
{
"MapName" : "This is map1",
}
在此验证jsonlint.com