2

在我的 iOS 5.1 应用程序中,我试图将 JSON 文本文件加载到 NSDictionary 中。

NSString *filepath = [[NSBundle mainBundle] pathForResource:@"stuff" ofType:@"json"];
NSDictionary *stuff = [NSDictionary dictionaryWithContentsOfFile:filepath];

文件路径有效,文件存在,但东西是nil,这意味着解码文件时出现问题(根据文档)。

(如何)我能否获得更多关于为什么[NSDictionary dictionaryWithContentsOfFile:]- 或任何类型的 API 调用 - 返回的调试信息nil

4

2 回答 2

4

阅读内容NSData,然后使用+[NSPropertyListSerialization propertyListWithData:options:format:error:].

于 2012-06-06T09:12:49.857 回答
1

正如您所说:您的文件包含一个 JSON 字符串。首先,您必须加载字符串,然后必须使用一些 JSON 库对其进行解析。

例如:

NSError *error;
NSString *content = [NSString stringWithContentsOfFile:filepath encoding:NSUTF8StringEncoding error:&error];  //error checking omitted
SBJsonParser *parser = [[SBJsonParser alloc] init];
NSDictionary *json = [parser objectWithString: content];
于 2012-06-06T09:13:21.610 回答