将字典中的数据保存到plist文件中,其实非常的简单,用到了这个库文件<Foundation/NSFileManager.h>
另外只要加上两句代码就可以实现了:
NSFileManager *fm = [NSFileManager defaultManager];
if ([fm createFileAtPath:fileName contents:nil attributes:nil] ==YES) {
[cityDic writeToFile:fileName atomically:YES];
建立一个单视图的工程
具体的代码如下:
HHLViewController.h
- #import <UIKit/UIKit.h>
- @interface HHLViewController : UIViewController
- {
- NSArray *cityArray;
- NSArray *pickerArray;
- NSDictionary *cityDic;
- }
- - (IBAction)buttonPressed:(id)sender;
- @end
HHLViewController.m
- #import "HHLViewController.h"
- @interface HHLViewController ()
- @end
- @implementation HHLViewController
- - (void)viewDidLoad
- {
- [super viewDidLoad];
- // Do any additional setup after loading the view, typically from a nib.
- NSString *beijing = @"101010100";
- NSString *tianjin = @"101030100";
- NSString *shanghai = @"101020100";
- NSString *shijiazhuang = @"101090101";
- NSString *zhengzhou = @"101180101";
- NSString *hefei = @"101220101";
- NSString *hangzhou = @"101210101";
- NSString *chongqing = @"101040100";
- NSString *fuzhou = @"101230101";
- NSString *lanzhou = @"101160101";
- NSString *guangzhou = @"101280101";
- NSString *nanning = @"101300101";
- NSString *guiyang = @"101260101";
- NSString *kunming = @"101290101";
- NSString *huhehaote = @"101080101";
- NSString *nanchang = @"101240101";
- NSString *wuhan = @"101200101";
- NSString *chengdu = @"101270101";
- NSString *yinchuan = @"101170101";
- NSString *xining = @"101150101";
- NSString *jinan = @"101120101";
- NSString *xian = @"101110101";
- NSString *taiyuan = @"101100101";
- NSString *wulumuqi = @"101130101";
- NSString *lasa = @"101140101";
- NSString *taibei = @"101340101";
- NSString *haikou = @"101310101";
- NSString *changsha = @"101250101";
- NSString *nanjing = @"101190101";
- NSString *haerbin = @"101050101";
- NSString *changchun = @"101060101";
- NSString *shenyang = @"101070101";
- cityArray = [[NSArray alloc] initWithObjects:beijing,tianjin,shanghai,shijiazhuang,zhengzhou,hefei,hangzhou,chongqing,fuzhou,lanzhou,guangzhou,nanning,guiyang,kunming,huhehaote,nanchang,wuhan,chengdu,yinchuan,xining,jinan,xian,taiyuan,wulumuqi,lasa,taibei,haikou,changsha,nanjing,haerbin,changchun,shenyang,nil];
- pickerArray = [[NSArray alloc] initWithObjects:@"北京",@"天津",@"上海",@"石家庄",@"郑州",@"合肥",@"杭州", @"重庆",@"福州",@"兰州",@"广州",@"南宁",@"贵阳",@"昆明",@"呼和浩特",@"南昌",@"武汉",@"成都",@"银川",@"西宁",@"济南",@"西安",@"太原",@"乌鲁木齐",@"拉萨",@"台北",@"海口",@"长沙",@"南京",@"哈尔滨",@"长春",@"沈阳",nil];
- cityDic =[[NSDictionary alloc] initWithObjects:cityArray forKeys:pickerArray];
- }
- - (void)didReceiveMemoryWarning
- {
- [super didReceiveMemoryWarning];
- // Dispose of any resources that can be recreated.
- }
- - (IBAction)buttonPressed:(id)sender {
- //把数据保存到沙盒里的plist文件
- NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
- NSString *plistPath1= [paths objectAtIndex:0];
- NSLog(@"%@",plistPath1);
- //得到完整的路径名
- NSString *fileName = [plistPath1 stringByAppendingPathComponent:@"cityCode.plist"];
- //NSMutableDictionary *myDic = [[NSMutableDictionary alloc]init];
- //[myDic setValuesForKeysWithDictionary:cityDic];
- NSFileManager *fm = [NSFileManager defaultManager];
- if ([fm createFileAtPath:fileName contents:nil attributes:nil] ==YES) {
- [cityDic writeToFile:fileName atomically:YES];
- NSLog(@"文件写入完成");
- }
- }
- @end
运行后的效果如下图所示:
今天终于把这些知识点搞明白了,希望能够和大家一块进步。