// 首先需要将省市区TXT文本放入工程里main下边,再从工程里将其拖拽到path的字面量里边,开始创建省市区字典
// 设置路径
NSString *path = @"/Users/dlios/Desktop/C和OC笔记,作业/OC6_字典/area.txt";
// 根据路径产生相应的字符串
NSString *str = [NSString stringWithContentsOfFile:path encoding:NSUTF8StringEncoding error:nil];
// 对字符串逐行进行切割
NSArray *strArr = [str componentsSeparatedByString:@"\n"];
// 打印切割后的字符串 这也是我们要得到的结果
// for (NSString *temp in strArr) {
// NSLog(@"%@", temp);
// }
// 创建一个省数组
NSMutableArray *proArr = [NSMutableArray array];
for (NSString *temp in strArr) {
if (![temp hasPrefix:@" "]) {
// 创建一个省的字典
NSMutableDictionary *proDic = [NSMutableDictionary dictionary];
// 给省字典添加键值对
// 省名
[proDic setObject:temp
forKey:@"provinceName"];
// 创建一个市数组
NSMutableArray *cityArr = [NSMutableArray array];
// 添加到省字典中
[proDic setObject:cityArr forKey:@"cityArr"];
// 把省字典放入到省数组中
[proArr addObject:proDic];
} else if ([temp hasPrefix:@" "] && ![temp hasPrefix:@" "]) {
// 找到对应的城市
// 创建市字典
NSMutableDictionary *cityDic = [NSMutableDictionary dictionary];
// 第一对 市名
[cityDic setObject:temp forKey:@"cityName"];
// 第二对 区数组
NSMutableArray *areaArr = [NSMutableArray array];
[cityDic setObject:areaArr forKey:@"areaArr"];
// NSMutableArray *cityArr = [proArr lastObject];
// [cityArr addObject:cityDic];
// 给市字典找一个位置
// 先找到对应的省字典
NSMutableDictionary *proDic = [proArr lastObject];
// 在找对应的市数组
NSMutableArray *cityArr = proDic[@"cityArr"];
// 最后再把字典放入到市数组中
[cityArr addObject:cityDic];
} else { // if ([temp hasPrefix:@" "])
// 先找省字典
NSMutableDictionary *proDic = [proArr lastObject];
// 市数组
NSMutableArray *cityArr = proDic[@"cityArr"];
// 市字典
NSMutableDictionary *cityDic = [cityArr lastObject];
// 区数组
NSMutableArray *areaArr = cityDic[@"areaArr"];
// 添加
[areaArr addObject:temp];
// 由于区已经是最小的地域单位,区数组只需要存区名这一组对象 不需要再创建一个区字典了
// NSMutableDictionary *areaDic = [NSMutableDictionary dictionary];
// [areaDic setObject:temp forKey:@"areaName"];
// NSMutableArray *areaArr = [NSMutableArray array];
// NSMutableDictionary *cityDic = [NSMutableDictionary dictionary];
// [cityDic setObject:areaArr forKey:@"areaArr"];
// // NSMutableDictionary *proDic = [proArr lastObject];
// cityDic = [proArr lastObject];
// areaArr = cityDic[@"areaArr"];
}
}
for (NSDictionary *proDic in proArr) {
NSLog(@"%@", proDic[@"provinceName"]);
NSMutableArray *cityArr = proDic[@"cityArr"];
for (NSDictionary *cityDic in cityArr) {
NSLog(@"%@", cityDic[@"cityName"]);
NSMutableArray *areaArr = cityDic[@"areaArr"];
for (NSString *temp in areaArr) {
NSLog(@"%@", temp);
}
}
}
省市区字典
最新推荐文章于 2015-11-08 14:19:00 发布