文件的读取(持久化)

    //获取Bundle的目录

   NSString *sourcePath = [[NSBundlemainBundle]pathForResource:@"city"ofType:@"plist"];

    

   //获取Document目录

    //NSSearchPathForDirectoriesInDomains(<#NSSearchPathDirectory directory#>, <#NSSearchPathDomainMask domainMask#>, <#BOOL expandTilde#>)

    //第一个参数为查找的是Documents目录,第二个参数指定的是将搜索限制在应用程序沙盒内

    //第三个参数如果为YES会将检索后的路径中~符号展开为实际路径

   NSArray *documentPaths =NSSearchPathForDirectoriesInDomains(NSDocumentDirectory,NSUserDomainMask,YES);

   //documentPaths为一个数组,但里面只包含一个路径,所以用[documentPaths objectAtIndex:0]来获取唯一路径

    NSString *documentDir = [documentPaths objectAtIndex:0];

    

   //获取目标目录

   //targetPath的路径就是文件city.plist的完整路径

    NSString *targetPath = [documentDir stringByAppendingPathComponent:@"city.plist"];

    

   //创建文件管理器

   NSFileManager *fileManager = [NSFileManagerdefaultManager];

   //error为错误对象

    NSError *error = nil;

    if (![fileManager fileExistsAtPath:targetPath]) {//判断拷贝的目标目录是否存在文件

       //如果不存在进入拷贝模式

        if ([fileManager moveItemAtPath:sourcePath toPath:targetPath error:&error]) {

           NSLog(@"拷贝成功");

        }

    }


    //文件写入  self.cityArr为数组

    [self.cityArrwriteToFile:targetPath atomically:YES];

   //文件读出

   self.cityArr = [NSMutableArrayarrayWithContentsOfFile:targetPath];


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值