获得应用程序沙盒路径的两种方法及…

沙盒是个只读目录,里面包含Library,tmp,Documents等文件夹,其中Library/Preferences/存放偏好设置,Library/Caches保存服务器中的数据,tmp存放临时数据,Documents保存需要保留的数据

 

获得沙盒路径

方法1:

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

//第一个参数,目录类型,NSSearchPathDirectory常量,此处代表Documents目录

//第二个参数是固定值域掩码NSUserDomainMask

//第三个参数是固定值YES

NSString *ourDocumentPath=[documentPaths objectAtIndex:0];

//得到Documents文档的路径

方法2:

NSString *sandboxPath=NSHomeDirectory();//沙盒全路径
NSString *documentPath=[sandboxPath stringByAppendingPathComponent:@"Documents/data.plist"];
//获得文档中具体文件的路径   

注:获得tmp目录的路径     NSTemporaryDirectory();

 

附:读取沙盒中的文件和将文件写入沙盒(以方法2为例)

读:    NSString *path=NSHomeDirectory();
        path=[path stringByAppendingPathComponent:@"tmp/data.plist"];
        NSArray*array=[NSArray arrayWithContentsOfFile:path];

写:

       NSString *path=NSHomeDirectory();
       path=[path stringByAppendingPathComponent:@"tmp/data.plist"];
       [mData writeToFile:path atomically:YES];

 

 

 

你可能感兴趣的:(iOS开发总结)