iOS真机沙盒文件查看 图片批量存储/获取/删除

Posted jzdwajue

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了iOS真机沙盒文件查看 图片批量存储/获取/删除相关的知识,希望对你有一定的参考价值。

转载请标注来自:http://blog.csdn.net/u014202635/article/details/46863629

1.

技术分享选Devices

2.

技术分享

3.

技术分享选中第二行

4.

技术分享保存在桌面

5.

技术分享右击选中显示包内容

6.

技术分享


以上环境为x-code6.3.1

//----------------------------------------------------------------------------------------------------------------------------------------------------------------

//图片批量存储获取删除

#import <Foundation/Foundation.h>


@interface ImageSaveHelper :NSObject


/**

 *  将图片数组以arrayName存储

 *

 *  @param array     图片数组,数组元素是UIImage

 *  @param arrayName 存储图片文件名

 */

+(void)saveImageArray:(NSMutableArray *)array andArrayName:(NSString *)fileName;


/**

 *  获取arrayName目录下全部图片

 *

 *  @param arrayName 文件名

 *

 *  @return 返回元素UIImage组成的数组

 */

+(NSMutableArray *)getImageArrayWithName:(NSString *)fileName;


/**

 *  删除fileName目录下名称为imageName的文件

 *

 *  @param imageName image名称

 *  @param fileName  目录名称

 *

 *  @return 是否删除成功

 */

+(BOOL)deleteImageName:(NSString * )imageName withFileName:(NSString *)fileName;


@end


//----------------------------------------------------------------------------------------------------------------------------------------------------------------.m文件

#import "ImageSaveHelper.h"

#import <UIKit/UIKit.h>


@implementation ImageSaveHelper


+(void)saveImageArray:(NSMutableArray *)array andArrayName:(NSString *)fileName{

    

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

    

   NSString * path = [paths[0]stringByAppendingPathComponent:fileName];

    

    if (![[NSFileManagerdefaultManager]fileExistsAtPath:path]){//推断createPath路径目录是否已存在。此处createPath为须要新建的目录的绝对路径

        

        [[NSFileManagerdefaultManager] createDirectoryAtPath:pathwithIntermediateDirectories:YESattributes:nilerror:nil];//创建目录

      }



   for (int i =0 ; i < array.count; i++) {

        

       NSString *filePath = [path stringByAppendingPathComponent:[NSStringstringWithFormat:@"%@%d.png",fileName, i]];  // 保存文件的名称

        

        [UIImagePNGRepresentation(array[i])writeToFile: filePath    atomically:YES];

    }

    



}


+(NSMutableArray *)getImageArrayWithName:(NSString *)fileName{


    NSMutableArray * imageArray = [NSMutableArrayarray];

    

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

    

   NSString * path = [paths[0]stringByAppendingPathComponent:fileName];

    

    if (![[NSFileManagerdefaultManager]fileExistsAtPath:path]){//推断createPath路径目录是否已存在,不存在直接返回

        

       return imageArray;

    }

    

    //此目录下全部图片名称

    NSArray *filesNameArray = [[NSFileManagerdefaultManager] subpathsOfDirectoryAtPath:patherror:nil];

    

   if (filesNameArray && filesNameArray.count !=0 ) {

        

       for (int i =0 ; i < filesNameArray.count; i++) {

            

           UIImage * image = [UIImageimageWithContentsOfFile:[path stringByAppendingPathComponent:filesNameArray[i]]];

            

            [imageArrayaddObject:image];

            

        }

        

    }


   return imageArray;


}


+(BOOL)deleteImageName:(NSString * )imageName withFileName:(NSString *)fileName;

{

    

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

    

   NSString * path = [paths[0]stringByAppendingPathComponent:fileName];

    

    NSString * pathFull = [pathstringByAppendingPathComponent:[NSStringstringWithFormat:@"%@.png",imageName]];

    

    if([[NSFileManagerdefaultManager] fileExistsAtPath:pathFull])//假设存在暂时文件的配置文件

    {

        

       return  [[NSFileManagerdefaultManagerremoveItemAtPath:pathFullerror:nil];

        

    }

    

    return NO;



}


@end





























以上是关于iOS真机沙盒文件查看 图片批量存储/获取/删除的主要内容,如果未能解决你的问题,请参考以下文章

打开沙盒文件iOS

在xcode中怎么看真机的沙盒

在xcode中怎么看真机的沙盒

IOS把图片缓存到本地的几种方法

iOS学习之iOS沙盒(sandbox)机制和文件操作

iOS 获取沙盒文件路径及 写入/删除 沙盒文件