沙盒

概念:NSHomeDirectory()当前app(沙盒)根目录

     (1.)Documents:是重要数据资源文件存到之处.特点..能被itunes同步

     (2.)Library:.

          (2.1)Caches:缓存.不能被itunes同步

          (2.2)Preferences:偏好设置.能够被itunes同步.

     (3)tmp:临时文件.主要用来处理一些临时数据

 

用于理解:

     //获取沙盒根目录

    NSString * path = NSHomeDirectory(); 

     //根据沙盒根目录进行写入目标文件路径拼接

    path = [path stringByAppendingPathComponent:@"123.png"];

    UIImage * image = [UIImage imageNamed:@"234.png"];

     //二进制文件需要进行二进制转换

    NSData * data = UIImagePNGRepresentation(image);

    //根据拼接好的目标文件路径生成目标文件并写入二进制数据

    [data writeToFile:path atomically:YES];

 

拿来使用:

1.获取文件路径

 NSString * Documents = [NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES)lastObject];
    
 NSString * Library = [NSSearchPathForDirectoriesInDomains(NSLibraryDirectory, NSUserDomainMask, YES)lastObject];
    
 NSString * Caches = [NSSearchPathForDirectoriesInDomains(NSCachesDirectory, NSUserDomainMask, YES)lastObject];
 
 NSString * Preferences = [NSSearchPathForDirectoriesInDomains(NSPreferencePanesDirectory, NSUserDomainMask, YES)lastObject];

 NSString* tmp = NSTemporaryDirectory();

 

2.示例

    NSString * path = [NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES)lastObject];
    path = [path stringByAppendingPathComponent:@"Ji.png"];
    
    UIImage * image = [UIImage imageNamed:@"234.png"];
    NSData * data  = UIImagePNGRepresentation(image);
    [data writeToFile:path atomically:YES];
    NSLog(@"--%@",path);
    
    //文件管理器->根据文件路径删除文件
    NSFileManager * manager = [NSFileManager defaultManager];
    [manager removeItemAtPath:path error:nil];

 

  

posted on 2016-07-10 11:23  田淳  阅读(149)  评论(0)    收藏  举报

导航