如何获取Sandbox的路径

2017-07-04  本文已影响6人  小苗晓雪

AppDelegate.h

1.Documents文件里放的是用户生成的文件 ;
2.Library里是程序产生的文件 ;
3.tmp里是临时文件 ;

有的小伙伴儿会问1和2有什么区别 , 1和2不都是用户通过程序创建的一些文件么?!
这里举例说明 , 1中的文件不可再生 , 比如聊天记录 , 而2中的文件一般认为是可再生的, 比如缓存的视频 , 音乐 或者是头像图片等~
苹果会在某些紧张的时刻甚至清除Library文件夹下的内容 , 但是Documents不会!

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {
    /**
     *  Data Container:
     
     */
    //Home目录 (最外层目录):
    NSString *directory = NSHomeDirectory();
    NSLog(@"directory %@", directory);
    
    NSLog(@"^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^");

    //Temp目录:
    NSString *temp = NSTemporaryDirectory();
    NSLog(@"temp %@", temp);
    NSLog(@"*************************************************************");
    
    /**
     解析:
     @param directory#> home下的哪一个目录 description#>
     @param domainMask#> 到底要在哪一个域下面 在iOS里一般都是: NSUserDomainMask description#>
     @param expandTilde#> 路径要不要展开?! 全路径方式?!还是 波浪线方式?! description#>
     @return 字符串路径
     */
    //Home目录下的子目录(可以拿到Documents , Library , tmp ):
    NSString *documents = [NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES) lastObject];
    NSLog(@"documents: %@", documents);
    
NSLog(@"&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&");
    
    NSString *library = [NSSearchPathForDirectoriesInDomains(NSLibraryDirectory, NSUserDomainMask, YES) lastObject];
    
    NSLog(@"library: %@", library);

    return YES;
}

愿编程让这个世界更美好

上一篇下一篇

猜你喜欢

热点阅读