美文网首页iOS Developer
iOS (详解)文件操作之写入/读取/删除

iOS (详解)文件操作之写入/读取/删除

作者: 錒伟 | 来源:发表于2017-07-05 14:14 被阅读44次

这几天正好有用到这个,顺便整理一下,代码注释还算完整,有不对的地方大家自己揣摩一下

写入数据到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];
    }

相关文章

  • iOS (详解)文件操作之写入/读取/删除

    这几天正好有用到这个,顺便整理一下,代码注释还算完整,有不对的地方大家自己揣摩一下 写入数据到plist文件 对p...

  • Java高级特性-文件操作

    通过Java程序完成对于文件和文件夹的创建,删除,移动,读取和写入等操作。 基本操作 文件流操作 定义向文件里面写...

  • 经验技巧 - 收藏集 - 掘金

    node 核心模块 --fs - 前端 - 掘金fs模块是文件操作的封装,它提供了文件读取、写入、更名、删除、遍历...

  • JavaSE常用API之File

    java可以对文件进行操作,包括但不限于创建、删除、读取文件内容,写入文件内容等操作,非常的强大! java.io...

  • tf.gfile文件操作模块

    TensorFlow中的tf.gfile模块提供了文件操作的API,包括文件的读取、写入、删除、复制等等。文档中对...

  • node中的内置模块fs

    fs文件系统操作模块 注:fs 模块=>包括文件目录的创建、删除、查询以及文件的读取、写入等; 在 fs 模块中,...

  • 文件操作作业

    封装文件的读写操作,写操作,写入需要写入文件的内容和地址;读操作,写入需要读取的文件地址。HomeWork.py

  • Python3 & 文件操作-文件备份

    Python中,对文件常见的操作包括:创建、删除、修改权限、读取、写入.....这些操作的作用是:把⼀些数据存储存...

  • javaAPI操作HDFS文件

    javaAPI写入HDFS文件。 javaAPI读取HDFS javaAPI删除HDFS

  • day10作业

    封装文件的读写操作,写操作,写入需要写入文件的内容和地址;读操作,写入需要读取的文件地址。 另一个.py文件

网友评论

    本文标题:iOS (详解)文件操作之写入/读取/删除

    本文链接:https://www.haomeiwen.com/subject/trxqhxtx.html