省市区解析

来源:互联网 发布:管理权限的软件 编辑:程序博客网 时间:2024/06/05 04:39

//

//  main.m

// 

//

//  Created by dllo on 15/11/6.

//  Copyright (c) 2015 王琦. All rights reserved.

//


#import <Foundation/Foundation.h>


int main(int argc,const char * argv[]) {

    @autoreleasepool {

    

        

       //找到文件路径

        NSString *path =@"/Users/dllo/Desktop/作业/ / /area.txt";

        

        NSString *text = [NSStringstringWithContentsOfFile:path encoding:NSUTF8StringEncodingerror:nil];

        

        //'\n'来截取text字符串,获得一个存储每行字符串的数组

       NSArray *lineArray = [text componentsSeparatedByString:@"\n"];

        

        //创建一个国家数组,用来存省

        NSMutableArray *country = [NSMutableArrayarray];

        

        //便利每一行字符串

       for (NSString *linein lineArray) {

           //判断当前行是否是省

           if (![line hasPrefix:@" "]) {

                //如果满足条件,说明是省,创建省字典

               NSMutableDictionary *proDictionary = [NSMutableDictionarydictionary];

                //向省字典内添加proName:省名键值对

                [proDictionarysetObject:line forKey:@"proName"];

               //为该省创建市数组

               NSMutableArray *cityArray = [NSMutableArrayarray];

                

                [proDictionarysetObject:cityArray forKey:@"citys"];

                

               //将该省添加到国家数组中

                

                [countryaddObject:proDictionary];

            }elseif ([line hasPrefix:@"  "] && ![linehasPrefix:@"   "]){

               

                //以两个空格开头,并且不以三个空格开头的是市

               //创建市字典

               NSMutableDictionary *cityDictionary = [NSMutableDictionarydictionary];

                

               //为字典设置市名

                [cityDictionarysetObject:line forKey:@"cityName"];

                

               //为该市创建数组

               NSMutableArray *zoneArray = [NSMutableArrayarray];

               //为该市设置区名

                [cityDictionarysetObject:zoneArray forKey:@"zones"];

                

                //通过国家数组来获得当前市所在的省

               NSMutableDictionary *proDic = [country lastObject];

                

                //将该市添加到该省对应的市数组中

                [[proDicobjectForKey:@"citys"]addObject:cityDictionary];

            }else{

               //如果不是省不是市就是区

               //创建区字典

               NSMutableDictionary *zoneDictionary = [NSMutableDictionarydictionary];

                

               //设置区名

                [zoneDictionarysetObject:line forKey:@"zoneName"];

                

               //先找到所属的省

               NSMutableDictionary *proDic = [country lastObject];

                

               //再根据省找到所属的市

               NSMutableDictionary *cityDic = [[proDic objectForKey:@"citys"]lastObject];

                //将该区添加到该市对应的区数组中

                [[cityDicobjectForKey:@"zones"]addObject:zoneDictionary];

            }

                

                

        }

        //打印出省市区,遍历国家数组

       for (NSMutableDictionary *proDicin country) {

           NSLog(@"pro:%@",[proDicobjectForKey:@"proName"]);

           //遍历该省的市数组

           for (NSMutableDictionary *cityDicin [proDic objectForKey:@"citys"]) {

                

               NSLog(@"city:%@",[cityDicobjectForKey:@"cityName"]);

                

               for (NSMutableDictionary *zoneDicin [cityDic objectForKey:@"zones"]) {

                    

                   NSLog(@"zone:%@",[zoneDicobjectForKey:@"zoneName"]);

                }

            }

        }

        

        

        

        

    }

   return 0;

}



0 0
原创粉丝点击