01-应用沙盒

//  ViewController.m
//  应用沙盒

#import "ViewController.h"

@interface ViewController ()
@end

@implementation ViewController

- (void)viewDidLoad {
    [super viewDidLoad];
    
    // 1.获取应用沙盒
    NSString *homePath = NSHomeDirectory();
    NSLog(@"%@",homePath);
    
    // 2.获取Document路径
    //第一种拼接方式
    NSString *documents = [homePath stringByAppendingString:@"/Documents"];
    //第二种拼接方式(以后用这种)(会智能判断是否有“/”,没有的话会自动添加,且较精准一点)
    documents = [homePath stringByAppendingPathComponent:@"Documents"];
    
    // 3.第三种拼接方式:搜索
    /*
     第一个参数:directory:要找哪个文件夹
         Documents -> NSDocumentDirectory
         Caches -> NSCachesDirectory
         Preference -> 没有
         tmp -> 没有
     第二个参数:domainMask:去哪里找
         第二个参数对应的方法
         NSUserDomainMask = 1        // 用户主目录中
         NSLocalDomainMask = 2       // 当前机器中
         NSNetworkDomainMask = 4     // 网络中可见的主机
         NSSystemDomainMask = 8      // 系统目录,不可修改(/System)
         NSAllDomainsMask = 0x0ffff  // 全部
     第三个参数:YES:绝对路径      NO:相对路径   一般情况下都用YES
         相对路径:~/Documents
         绝对路径:/Users/ge/Library/Developer/CoreSimulator/Devices/E7C9650F-A40F-4185-888E-B3B14A14526A/data/Containers/Data/Application/CAC62BFB-C718-4FE5-8F0D-3EDEA7429557/Documents
     */
    documents = [NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES) lastObject];
    NSLog(@"%@",documents);
    
    
    //3.caches路径获取
    NSString *caches = [NSSearchPathForDirectoriesInDomains(NSCachesDirectory, NSUserDomainMask, YES) lastObject];
    NSLog(@"%@",caches);
    
    //4.tmp路径获取
    NSString *tmp = NSTemporaryDirectory();
    NSLog(@"tmp:%@",tmp);
}

@end

你可能感兴趣的:(01-应用沙盒)