(void)viewDidLoad {
[super viewDidLoad];
// Do any additional setup after loading the view.
// 调用方法
[self setUpDataJsonCity];
}(void)setUpDataJsonCity
{
// 1.首先,要获取json文件的路径
// 注意:文件名要保持一致
NSString *path = [[NSBundle mainBundle] pathForResource:@”area” ofType:@”json”];
// 2.根据路径将json文件转化为data
NSData *data = [NSData dataWithContentsOfFile:path];
// 3.NSJSONSerialization JSONObjectWithData:(NSData ) options:(NSJSONReadingOptions) error:(NSError *)调用这个方法可以将json文件内容保存下来
// NSJSONReadingOptions是一个枚举,一般选择NSJSONReadingMutableContainers,即可变容器盛放数据
// NSError **,可以直接填nil,但是如果想得到错误信息,就要定义一个NSError
NSError *error = nil;
NSMutableArray *dataArray = [NSJSONSerialization JSONObjectWithData:data options:(NSJSONReadingMutableContainers) error:&error];
// 注意:data转化成可变数组或者可变字典 是字典还是数组要看json文件最外层是什么
// 以下是存储数据
// 注意:要初始化数组
self.dataArray = [NSMutableArray array];
// 首先,便利数组
for (NSDictionary *dic in dataArray) {
// 创建一个存放数据的类,属性名字要和json文件内的属性保持一致,然后将其初始化
CityModel *model = [[CityModel alloc] init];
// 将数据放入到model中
[model setValuesForKeysWithDictionary:dic];
// 将model放入数组
[self.dataArray addObject:model];
[model release];
}
}