zoukankan      html  css  js  c++  java
  • NSSearchPathForDirectoriesInDomains

    1.iPhone会为每一个应用程序生成一个私有目录,这个目录位于:

    /Users/***/Library/Developer/CoreSimulator/Devices/79D02154-BE58-4A15-A764-79619AFB92E1/data/Containers/Data/Applications下,

    并随即生成一个数字字母串作为目录名,在每一次应用程序启动时,这个字母数字串都是不同于上一次。

    所以通常使用Documents目录进行数据持久化的保存,而这个Documents目录可以通过:

    NSSearchPathForDirectoriesInDomains(NSDocumentDirectory,NSUserdomainMask,YES) 得到。

    代码如下:

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

        NSString *documentsDirectory = [paths objectAtIndex:0];

        NSLog(@"path:   %@",path);

      NSString* path=[NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES) objectAtIndex:0];

        NSLog(@"path%@",path);

        打印结果如下:

        path:   

    /Users/***/Library/Developer/CoreSimulator/Devices/79D02154-BE58-4A15-A764-79619AFB92E1/data/Containers/Data/Application/7314AA0F-EDBD-4719-8294-A9CFC23C7AE5/Documents

    而通过 NSHomeDirectory()也可以得到程序的目录,代码如下:

        NSString *destPath = NSHomeDirectory();

        NSLog(@"path:   %@",destPath);

        打印结果如下:

        path:  

    /Users/beyondtel/Library/Developer/CoreSimulator/Devices/79D02154-BE58-4A15-A764-79619AFB92E1/data/Containers/Data/Application/7314AA0F-EDBD-4719-8294-A9CFC23C7AE5

        看看两者打印出来的结果,我们可以看出这两种方法的不同

    在Documents目录下创建文件

    代码如下:

        NSString* path=[NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES) objectAtIndex:0];

        NSString* dbPath=[path stringByAppendingPathComponent:@"user.db"];

    • Documents:应用中用户数据可以放在这里,iTunes备份和恢复的时候会包括此目录
    • tmp:存放临时文件,iTunes不会备份和恢复此目录,此目录下文件可能会在应用退出后删除
    • Library/Caches:存放缓存文件,iTunes不会备份此目录,此目录下文件不会在应用退出删除
  • 相关阅读:
    ios存储 plist 偏好设置 自定义对象存储
    Spring中Bean的生命中期与InitializingBean和DisposableBean接口
    Spring中BeanPostProcessor
    cxf
    ios快捷键
    UIPickerView
    ios通知-kvo
    7.python 装饰器
    5.python内置函数
    4.python 深拷贝 浅拷贝 函数 匿名函数lambda
  • 原文地址:https://www.cnblogs.com/pjl111/p/4347517.html
Copyright © 2011-2022 走看看