OC中用字典创建一个具有省市区的应用(简单的字典运用代码)

来源:互联网 发布:域名虚拟主机哪家好 编辑:程序博客网 时间:2024/06/14 06:57
</pre><pre name="code" class="objc">#import <Foundation/Foundation.h>int main(int argc, const char * argv[]) {    // 准备工作    NSString *path = @"/Users/dllo/Desktop/area.txt";    // 根据路径产生相应的字符串    NSString *str  =[NSString stringWithContentsOfFile:path encoding:NSUTF8StringEncoding error:nil];    // 对字符串进行逐行切割    NSArray *strArr = [str componentsSeparatedByString:@"\n"];        // 创建一个省数组    NSMutableArray *proArr = [NSMutableArray array];    for (NSString *temp in strArr) {        if (![temp hasPrefix:@" "]) {            // 创建省字典            NSMutableDictionary *proDic = [NSMutableDictionary dictionary];            // 给省字典添加键值对            // 省名            [proDic setObject:temp forKey:@"proName"];            // 创建一个市数组            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 *zoneArr = [NSMutableArray array];            [cityDic setObject:zoneArr forKey:@"zoneArr"];            // 给市字典找一个位置            // 先找到对应的省字典            NSMutableDictionary *proDic = [proArr lastObject];            // 然后再找对应的市数组            NSMutableArray *cityArr = proDic[@"cityArr"];            [cityArr addObject:cityDic];        } else {            // 先找省字典            NSMutableDictionary *proDic = [proArr lastObject];            // 市数组            NSMutableArray *cityArr = proDic[@"cityArr"];            // 市字典            NSMutableDictionary *cityDic = [cityArr lastObject];            // 区数组            NSMutableArray *zoneArr = cityDic[@"zoneArr"];            // 添加            [zoneArr addObject:temp];        }    }    // forin遍历省数组名    for (NSMutableDictionary *dic in proArr) {        NSLog(@"------------------");        NSLog(@"%@",dic[@"proName"]);        NSLog(@"------------------");        NSMutableArray *cityArr = dic[@"cityArr"];        for (NSMutableDictionary *cityDic in cityArr) {            NSLog(@"%@",cityDic[@"cityName"]);                NSLog(@"***************");            NSMutableArray *zoneArr = cityDic[@"zoneArr"];            for (NSString *str in zoneArr) {                NSLog(@"%@",str);                NSLog(@"***************");            }        }    }                    return 0;}
代码中已给出详细注释
1 0
原创粉丝点击