iOS 沙盒图片的存取

简介:

图片的沙盒读存操作主要是增、删、查,一般不涉及改的操作,这里直接以代码演示

常用代码:
  1.  /**
      *  存储缩略图到沙盒中
      */
     + (BOOL)saveImageToPath:(NSString *)imageFilePath image:(UIImage *)image{
         return [UIImageJPEGRepresentation(image, 0.5) writeToFile:imageFilePath  atomically:YES];
     }
    
  2.  /**
      *  删除沙盒里的缩略图
      */
     + (void)deleteImageWithPath:(NSString *)thumbnailPath{
         BOOL isHave = [[NSFileManager defaultManager] fileExistsAtPath:thumbnailPath];
    
         if (!isHave) {
             NSLog(@"no  have");
             return ;
         }else {
             NSError *error;
             BOOL isDeleteFinish = [[NSFileManager defaultManager] removeItemAtPath:thumbnailPath error:&error];
     
             if (!isDeleteFinish) {
                 NSLog(@"delete fail --- %@", error);
             }
         }
     }
    
  3.  UIImage *image = [UIImage imageWithContentsOfFile:thumbnailPath];
    
  4. 获取缩略图路径

     /**
      *  获取缩略图的路径
      */
     + (NSString *)getFilePath{
         NSString *libPath = [NSSearchPathForDirectoriesInDomains(NSLibraryDirectory, NSUserDomainMask, YES) lastObject];
         NSString *thumbnailPath = [NSString stringWithFormat:@"%@/Caches/AR/ARThumbnail", libPath];
         NSFileManager *fileManager = [NSFileManager defaultManager];
         if (![fileManager fileExistsAtPath:thumbnailPath]) {
             NSError *error;
             [fileManager createDirectoryAtPath:thumbnailPath withIntermediateDirectories:YES attributes:nil error:&error];
             if (error) {
                 NSLog(@"error");
                 return nil;
             }
         }        
         return thumbnailPath;
     }
    
  5. 获取沙盒根目录
    //获取沙盒根目录
    NSString *directory = NSHomeDirectory();
    NSLog(@“directory:%@”, directory);

  6. 获取Document路径
    //获取Documents路径
    NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
    NSString *path = [paths objectAtIndex:0];
    NSLog(@“path:%@”, path);

  7. 获取Library路径

      //获取Library路径
      NSArray *paths = NSSearchPathForDirectoriesInDomains(NSLibraryDirectory, NSUserDomainMask, YES);
      NSString *path = [paths objectAtIndex:0];
      NSLog(@"path:%@", path);
    
  8. 获取tmp路径

      NSString *tmp = NSTemporaryDirectory();
      NSLog(@"tmp:%@", tmp);
    
  9. 获取Caches路径

      //获取Caches路径
      NSArray *paths = NSSearchPathForDirectoriesInDomains(NSCachesDirectory, NSUserDomainMask, YES);
      NSString *path = [paths objectAtIndex:0];
      NSLog(@"path:%@", path);
    

相关推荐

  1. iOS 图片存取

    2024-05-13 05:18:05       36 阅读
  2. Android机制

    2024-05-13 05:18:05       40 阅读

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2024-05-13 05:18:05       94 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2024-05-13 05:18:05       101 阅读
  3. 在Django里面运行非项目文件

    2024-05-13 05:18:05       82 阅读
  4. Python语言-面向对象

    2024-05-13 05:18:05       91 阅读

热门阅读

  1. go语言切片slice使用细节和注意事项整理

    2024-05-13 05:18:05       31 阅读
  2. GO: json 处理

    2024-05-13 05:18:05       37 阅读
  3. 【GoLang基础】defer关键字有什么作用?

    2024-05-13 05:18:05       34 阅读
  4. 算法训练营day33

    2024-05-13 05:18:05       36 阅读
  5. C++:完美转发(一)(std::forward)

    2024-05-13 05:18:05       30 阅读
  6. Gone框架介绍15 - 使用traceId追踪日志

    2024-05-13 05:18:05       31 阅读
  7. Nginx使用详解

    2024-05-13 05:18:05       35 阅读
  8. Agent AI智能体:未来社会的角色、发展与挑战

    2024-05-13 05:18:05       31 阅读