读取省市区文件,并对文件内的数据进行处理和存储
来源:互联网 发布:脑电数据.归一化 编辑:程序博客网 时间:2024/05/01 20:32
读取省市区文件,并对文件内的数据进行处理和存储
area.txt文件内的部分内容
北京 1
北京市 1
西城区 1
东城区 2
崇文区 3
宣武区 4
朝阳区 5
丰台区 6
石景山区 7
海淀区 8
门头沟区 9
房山区 10
通州区 11
顺义区 12
昌平区 13
大兴区 14
怀柔区 15
平谷区 16
密云区 17
延庆区 18
天津 2
天津市 2
和平区 19
河东区 20
河西区 21
南开区 22
河北区 23
红桥区 24
塘沽区 25
汉沽区 26
大港区 27
东丽区 28
西青区 29
津南区 30
北辰区 31
武清区 32
宝坻区 33
宁河县 34
静海县 35
蓟县 36
省市区的存储视图:
country数组:proDic1,proDic2,.....
|
proName(省名),citys(数组):cityDic1,cityDic2,...
|
cityName(市名),zones(数组):zoneDic1,zoneDic2,....
|
zoneName(区名)
country(国家数组),里存放的是各个省的字典;
每个省字典里存放一个本省的名字,和本省管辖的市数组; 市数组里存放的是各个市的字典.
每个市字典里存放一个本市的名字,和本市管辖的区数组; 区数组里存放的是各个区的字典.
每个区字典里存放一个本区的名字.
//文件地址 NSString *path = @"/Users/dllo/Desktop/OC作业/OC06_字典,数组嵌套练习/OC06_字典,数组嵌套练习/area.txt"; //读取文件字符 NSString *str = [NSString stringWithContentsOfFile:path encoding:NSUTF8StringEncoding error:nil]; //分割成存储每行的数组 NSArray *lineArray = [str componentsSeparatedByString:@"\n"]; //创建一个国家数组,用来存储省 NSMutableArray *country = [NSMutableArray array]; //遍历每行字符串 for (NSString *line in lineArray) { //判断当前行是否为省 if (![line hasPrefix:@" "]) { //省 //创建省字典 (就两键值对 proName<->... citys<->array) NSMutableDictionary *proDic = [NSMutableDictionary dictionary]; //向省字典内添加键值对 proName [proDic setObject:line forKey:@"proName"]; //为该省创建市数组, 并加入 citys NSMutableArray *citysArray = [NSMutableArray array]; [proDic setObject:citysArray forKey:@"citys"]; //将该省字典添加到国家数组中 [country addObject:proDic]; } //以两个空格开头, 并且不以三个空格开头的是市 else if ([line hasPrefix:@" "] && ![line hasPrefix:@" "]) { //创建一个市的字典 (就俩键值对 cityName<->... zones<->array) NSMutableDictionary *cityDic = [NSMutableDictionary dictionary]; //向市字典内添加键值对: cityName [cityDic setObject:line forKey:@"cityName"]; //为市创建区数组, 并加入 zones NSMutableArray *zonesArray = [NSMutableArray array]; [cityDic setObject:zonesArray forKey:@"zones"]; //获得当前省字典!!! NSMutableDictionary *proDic = [country lastObject]; //将该市字典添加到, 省字典的 市数组中 [[proDic objectForKey:@"citys"] addObject:cityDic]; } else { //区 //创建区字典 (就一个键值对 zoneName<->...) NSMutableDictionary *zoneDic = [NSMutableDictionary dictionary]; //向区字典内添加键值对 [zoneDic setObject:line forKey:@"zoneName"]; //找到最后一个省的市数组 NSMutableDictionary *proDic = [country lastObject]; NSMutableArray *citysArray = [proDic objectForKey:@"citys"]; //找到最后一个市的区数组, 并将该区加入 NSMutableDictionary *cityDic = [citysArray lastObject]; [[cityDic objectForKey:@"zones"] addObject:zoneDic]; } } //打印省市区 for (NSMutableDictionary *proDic in country) { //打印省名 NSLog(@"pro:%@", [proDic objectForKey:@"proName"]); //遍历该省下的市数组 for (NSMutableDictionary *cityDic in [proDic objectForKey:@"citys"]) { //打印市名 NSLog(@"city: %@", [cityDic objectForKey:@"cityName"]); //遍历该市下的区数组 for (NSMutableDictionary *zoneDic in [cityDic objectForKey:@"zones"]) { //打印区名 NSLog(@"zone: %@", [zoneDic objectForKey:@"zoneName"]); } } }
0 0
- 读取省市区文件,并对文件内的数据进行处理和存储
- java_读取文件并对数据进行排序并写出
- 读取csv文件并使用pandas.Series.apply进行处理时,对header=?的处理
- 一堆图片文件的读取/处理后进行顺序存储
- Java读取文件夹下的文件并进行处理
- JAVA对文件内数据进行排序的解决办法
- Java读取json文件并对json数据进行读取、添加、删除与修改操作
- java读取文件数据进行一些简单处理的例子
- java读取文件数据进行一些简单处理的例子
- 使用文件对数据进行存储、访问
- 四、用文件对数据进行存储
- iOS 对kml文件内数据进行解析并在地图上绘制(二)
- Datatables内自定义按钮,并实现对table内数据的读取和操作。
- 如何创建内存映射文件,并对其进行写入与读取数据
- 使用文件进行数据存储及读取文件内容
- C++读取csv文件并以map进行存储
- SequenceInputStream类(对包含多个对象内的文件连续进行读取)
- Android 存储数据之1 读取文件和存储文件
- Java读取html中所有img标签的src值
- 从运营事故中成长
- 标准对话框 QMessageBox
- c#socket和多线程结合使用时使用try-catch语句无法捕获住抛出的异常的问题
- logistic回归
- 读取省市区文件,并对文件内的数据进行处理和存储
- 什么是qt,QT Creator, QT SDK, QT Designer
- Android性能优化-----单一Activity框架
- spring 调度器的使用
- ios项目中添加预编译pch文件
- Android Fragment 生命周期图
- 支持向量机SVM
- Linux上安装MySQL时出现不兼容的解决办法
- mysql之死锁