IOS Plist文件操作之写入/读取/删除

本文介绍如何在iOS应用中利用.plist文件存储数据,包括创建、读取、更新和删除.plist文件的方法。通过实例演示如何使用NSMutableDictionary来管理和操作.plist文件中的数据。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

摘要: 1.保存在user Document文件夹下,以读取文件,写入文件方式 2.在工程里手动创建一个.plist文件,把固定的内容写入,这个需要人工手动写入(工程里只可读取,不可以写入) 3.保存在user Document下,不过不需要读写文件,用系统的 NSUserDefaults 可以快速保存添加读取删除基本数据类型 这里记录的是第1种,第2种就是创建一个plist文件,然后自己手动写入数据,再用NSString *path = [[NSBundle mainBundle] pathForResource:@"xiaoxi" ofType:@"plist"];获取到本地存储的数据。



  • 写入数据到plist文件

      //获取路径对象
        NSArray *pathArray = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
        NSString *path = [pathArray objectAtIndex:0];
        //获取文件的完整路径
        NSString *filePatch = [path stringByAppendingPathComponent:@"xiaoxi.plist"];
        
        //上面3句可以写成这一句
    //    NSString *filePatch = [[NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES)objectAtIndex:0]stringByAppendingPathComponent:@"xiaoxi.plist"];
        
    //    NSLog(@"------filepath---%@",filePatch);
        /*
         *
         下面是我的plist路径,在桌面空白处点击一下,前往-按住option-资源库-Developer-CoreSimulator-Devices......就按照下面路径找到plist所在的位置
         *
        /Users/baiteng01/Library/Developer/CoreSimulator/Devices/92444384-5241-4934-B078-1A7241F1B687/data/Containers/Data/Application/73005382-D1FB-4BC2-BB4E-1FBC64284141/Documents/xiaoxi.plist
         *
         */
        
        //写入数据到plist文件
        NSMutableDictionary *dic1 = [NSMutableDictionary dictionaryWithObjectsAndKeys:@"小小虎",@"name",@"5",@"age",@"boy",@"sex",nil];
        
        NSMutableDictionary *dic2 = [NSMutableDictionary dictionaryWithObjectsAndKeys:@"小小兮",@"name",@"6",@"age",@"girl",@"sex",nil];
        
        //将上面2个小字典保存到大字典里面
        NSMutableDictionary *dataDic = [NSMutableDictionary dictionary];
        [dataDic setObject:dic1 forKey:@"一年级"];
        [dataDic setObject:dic2 forKey:@"二年级"];
        //写入plist里面
        [dataDic writeToFile:filePatch atomically:YES];
        
        //读取plist文件的内容
        NSMutableDictionary *dataDictionary = [[NSMutableDictionary alloc] initWithContentsOfFile:filePatch];
        NSLog(@"---plist一开始保存时候的内容---%@",dataDictionary);


  • 对plist文件内容进行/删除/修改/添加/写入操作

    //修改字典里面的内容,先按照结构取到你想修改内容的小字典
        NSMutableDictionary *dd = [dataDictionary objectForKey:@"一年级"];
        [dd setObject:@"我改名字了哦" forKey:@"name"];
        [dd setObject:@"我添加的新内容" forKey:@"content"];
        [dd removeObjectForKey:@"age"];
        
        //修改成功以后,将这个小字典重新添加到大字典里面
        [dataDictionary setObject:dd forKey:@"一年级"];
        
        [dataDictionary writeToFile:filePatch atomically:YES];
        NSLog(@"---plist做过操作之后的字典里面内容---%@",dataDictionary);


  • 删除plist文件

      //清除plist文件,可以根据我上面讲的方式进去本地查看plist文件是否被清除
        NSFileManager *fileMger = [NSFileManager defaultManager];
        
        NSString *xiaoXiPath = [[NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES)objectAtIndex:0]stringByAppendingPathComponent:@"xiaoxi.plist"];
        
        //如果文件路径存在的话
        BOOL bRet = [fileMger fileExistsAtPath:xiaoXiPath];
        
        if (bRet) {
            
            NSError *err;
            
            [fileMger removeItemAtPath:xiaoXiPath error:&err];
        }



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值