iOS开发中,咱们时常会将一些简单的数据进行持久化的存储,方便咱们保存程序的一些配置和用户的一些数据,plist文件就是咱们保存这些数据的最佳选择。xcode
plist是一种文件格式,其内容规则是xml文件,后缀为.plist,所以,咱们更习惯于成它问plist文件,在iOS开发中,这种文件经常使用来保存一些简单的配置数据,例如项目中的info.plist。安全
经过plist文件编辑器,咱们能够很方便的查看和编辑层次清晰的plist文件。编辑器
对于NSUserDefaults,具体用法和一些小技巧在之前的一篇博客中有详细的描述,通常的用户配置信息,咱们都会选择经过这种方式来进行持久化,地址以下:http://my.oschina.net/u/2340880/blog/411344。工具
这种方式建立的plist文件很是自由且直观,咱们能够建立多个根据功能进行分类存储,而且能够经过Xcode的可视化工具进行可视化的修改。atom
首先,咱们新建立一个文件,在Resource中选择 Property List文件:spa
以后,咱们经过Xcode,在其中添加一些数据:操作系统
经过代码,咱们来获取这些数据:.net
//获取myInfo文件地址 NSString * path = [[NSBundle mainBundle]pathForResource:@"myInfo" ofType:@"plist"]; NSMutableDictionary * dic =[NSMutableDictionary dictionaryWithContentsOfFile:path]; NSLog(@"%@",dic);
打印结果以下:code
这种方式添加的plist文件,咱们只能在xcode中配置好,而后再程序中读取使用,可是不能在程序中修改这些数据,能够应用于一些固定的数据的存储,例如地图的属性,省市县列表等。xml
咱们还能够经过代码在沙盒中建立咱们本身的plist文件,进行数据的存储。同时能够支持add,delete,replace,find等操做。
//获取沙盒目录 NSArray *paths=NSSearchPathForDirectoriesInDomains(NSDocumentDirectory,NSUserDomainMask,YES); NSString *plistPath1 = [paths objectAtIndex:0]; //获得完整的文件名 NSString *filename=[plistPath1 stringByAppendingPathComponent:@"my.plist"]; NSDictionary * dic = @{@"my":@"haha"}; [dic writeToFile:filename atomically:YES]; //取数据 NSDictionary * getDic = [NSDictionary dictionaryWithContentsOfFile:filename]; NSLog(@"%@",getDic);
打印以下:
这种方式无疑会更加安全,存取也更加自由。
专一技术,热爱生活,交流技术,也作朋友。
——珲少 QQ群:203317592