iOS plist 详解

plist 全名 Property List,属性列表文件,它是一种用来存储串行化后的对象的文件,属性列表文件的扩展名为 .plist ,因此通常被称为 plist文件。文件是xml格式的。plist文件 通常用于储存用户设置,也可以用于存储捆绑的信息

创建 plist 文件的方式
1> 右键 New File


1> 创建出来的 plist,可以直接点击添加新列


2> 可直接通过文件操作创建 plist 文件

3> 读取 plist 中的信息
NSString *plistPath = [[ NSBundle mainBundle ] pathForResource : @"test" ofType : @"plist" ]; // 通过文件名 扩展名获取文件路径
NSMutableDictionary *data = [[NSMutableDictionary alloc] initWithContentsOfFile:plistPath];// 读取路径文件中的信息

3> 向 plist文件中写入信息
NSMutableDictionary *data = [[ NSMutableDictionary alloc ] init ]; // 读取路径文件中的信息
[data setObject:@"value_a" forKey:@"key_a"];
[data setObject : @"value_b" forKey : @"key_b" ];
[data setObject : @"value_c" forKey : @"key_c" ];
// 获取应用程序沙盒的 Documents 目录
NSArray *paths = NSSearchPathForDirectoriesInDomains ( NSDocumentDirectory , NSUserDomainMask , YES );
NSString *plistPath1 = [paths objectAtIndex : 0 ];
// 得到完整的文件名
NSString *filename = [plistPath1 stringByAppendingPathComponent : @"test123456.plist" ];
[data writeToFile :filename atomically : YES ];
// 读取文件中的信息就可以判断是否文件操作成功
NSMutableDictionary *data1 = [[ NSMutableDictionary alloc ] initWithContentsOfFile :filename];
NSLog(@"%@", data1);

4> 修改 plist文件中的信息
// 获取应用程序沙盒的 Documents 目录
NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
NSString *plistPath1 = [paths objectAtIndex : 0 ];
// 得到完整的文件名
NSString *filename = [plistPath1 stringByAppendingPathComponent : @"test123456.plist" ];
NSMutableDictionary *data = [[ NSMutableDictionary alloc ] initWithContentsOfFile :filename]; // 读取路径文件中的信息
// 设置属性值 , 没有的数据就新建,已有的数据就修改
[[data objectForKey : @"users" ] setObject : @" 逗比 " forKey : @"name" ];
[data removeObjectForKey : @"key_c" ]; // 删除数据
[data setObject : @"cccccccccccc" forKey : @"key_c" ]; // 测试时无法直接修改已存在 key 的值,可以先删除再添加方式来修改
[data writeToFile :filename atomically : YES ];
// 读取文件中的信息就可以判断是否文件操作成功
NSMutableDictionary *data1 = [[ NSMutableDictionary alloc ] initWithContentsOfFile :filename];
NSLog(@"%@", data1);
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值