如何从本地JSON文件将数据加载到ViewController

时间:2013-10-15 17:17:08

标签: ios json local

我正在开发一个iPhone应用程序,我需要在TableView中显示存储的数据。 经过一些研究,我认为JSON最适合存储数据。但是,我找不到任何教程解释如何将JSON读作本地文件而不是 来自远程来源,情况往往如此。

您可以推荐哪些教程?

2 个答案:

答案 0 :(得分:23)

首先:你需要加载你的本地json字符串。假设jsonstring在你的项目中,要加载它,首先创建指向该文件的nsstring:

NSString *filePath = [[NSBundle mainBundle] pathForResource:@"THENAMEOFTHEFILE" ofType:@"EXTENSIONOFYOUTFILE"];

第二,加载文件数据:

NSData *content = [[NSData alloc] initWithContentsOfFile:filePath];

第三,解析数据:

NSDictionary *json = [NSJSONSerialization JSONObjectWithData:content options:kNilOptions error:nil];

答案 1 :(得分:14)

您可以使用NSJSONSerialization

NSError *deserializingError;
NSURL *localFileURL = [NSURL fileURLWithPath:pathStringToLocalFile];
NSData *contentOfLocalFile = [NSData dataWithContentsOfURL:localFileURL];
id object = [NSJSONSerialization JSONObjectWithData:contentOfLocalFile 
                                            options:opts 
                                              error:&deserializingError];