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];

}

 

 

demo 下載地址:https://github.com/jukai9316/JKImageTool


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM