iOS 图片本地存储本地获取本地删除

Posted 鸿鹄当高远

tags:

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

 

ios开发中、经常用到图片的本地化。 iOS 图片本地存储、本地获取、本地删除,可以通过以下类方法实现。

//将图片保存到本地

+ (void)SaveImageToLocal:(UIImage*)image Keys:(NSString*)key {

    

    //首先,需要获取沙盒路径

    NSString *picPath=[NSString stringWithFormat:@"%@/Documents/%@.png",NSHomeDirectory(),key];

    

    NSLog(@"将图片保存到本地  %@",picPath);

    

    BOOL isHaveImage = [self LocalHaveImage:key];

    if (isHaveImage) {

        NSLog(@"本地已经保存该图片、无需再次存储...");

        return ;

    }

    

    NSData *imgData = UIImageJPEGRepresentation(image,0.5);

    [imgData writeToFile:picPath atomically:YES];

    

}

 

 

//从本地获取图片

+ (UIImage*)GetImageFromLocal:(NSString*)key {

    

    if ([JKBlankTool isBlankString:key]) {

        return nil;

    }

    

    //读取本地图片非resource

    NSString *picPath=[NSString stringWithFormat:@"%@/Documents/%@.png",NSHomeDirectory(),key];

    

    NSLog(@"获取图片   %@",picPath);

    

    UIImage *img=[[UIImage alloc]initWithContentsOfFile:picPath];

    

    return img;

    

}

 

//本地是否有图片

+ (BOOL)LocalHaveImage:(NSString*)key {

    

    if ([JKBlankTool isBlankString:key]) {

        return NO;

    }

    

    //读取本地图片非resource

    NSString *picPath=[NSString stringWithFormat:@"%@/Documents/%@.png",NSHomeDirectory(),key];

    

    NSLog(@"查询是否存在 %@",picPath);

    

    UIImage *img=[[UIImage alloc]initWithContentsOfFile:picPath];

    

    if (img) {

        return YES;

    }

    return NO;

    

}

 

 

//将图片从本地删除

+ (void)RemoveImageToLocalKeys:(NSString*)key {

    

    NSString *picPath=[NSString stringWithFormat:@"%@/Documents/%@.png",NSHomeDirectory(),key];

    NSLog(@"将图片从本地删除  %@",picPath);

    [[NSFileManager defaultManager] removeItemAtPath:picPath error:nil];

}

 

以上是关于iOS 图片本地存储本地获取本地删除的主要内容,如果未能解决你的问题,请参考以下文章

iPad 3 iOs 7 本地存储配额ExceededError

获取图片存储到本地

JAVA将图片(本地或者网络资源)转为Base64字符串,将base64字符串存储为本地图片

ios如何加载本地文件

本地储存(localStorage)记录

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