iOS-缓存的清理

不积跬步,无以至千里
不积小流,无以成江海

具体目录参考iOS-沙盒机制存放文件

  • 计算单个文件的�大小
-(float)fileSizeAtPath:(NSString *)path{
    NSFileManager *fileManager=[NSFileManager defaultManager];
    if([fileManager fileExistsAtPath:path]){
        long long size=[fileManager attributesOfItemAtPath:path error:nil].fileSize;
        return size/1024.0/1024.0;
    }
    return 0;
}
  • 目录文件的大小
-(float)folderSizeAtPath:(NSString *)path{
    NSFileManager *fileManager=[NSFileManager defaultManager];
    float folderSize;
    if ([fileManager fileExistsAtPath:path]) {
        NSArray *childerFiles=[fileManager subpathsAtPath:path];
        for (NSString *fileName in childerFiles) {
            NSString *absolutePath=[path stringByAppendingPathComponent:fileName];
            folderSize +=[self fileSizeAtPath:absolutePath];
    }
    //SDWebImage框架自身计算缓存的实现
    folderSize+=[[SDImageCache sharedImageCache] getSize]/1024.0/1024.0;
    return folderSize;
    }
    return 0;
}
  • 缓存的清理
-(void)clearCache:(NSString *)path{

    //NSArray *paths = NSSearchPathForDirectoriesInDomains(NSLibraryDirectory, NSUserDomainMask, YES);
    //NSString *path = [paths lastObject];
  
    NSFileManager *fileManager=[NSFileManager defaultManager];
    if ([fileManager fileExistsAtPath:path]) {
        NSArray *childerFiles=[fileManager subpathsAtPath:path];
        for (NSString *fileName in childerFiles) {
        //删除所有文件
        NSError *error;
        NSString *absolutePath=[path stringByAppendingPathComponent:fileName];
        [fileManager removeItemAtPath:absolutePath error:&error];
        }
    }
    //一般有用到SDWebImage可以用
    //#import "SDImageCache.h"
    [[SDImageCache sharedImageCache] cleanDisk];

}
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • 发现 关注 消息 iOS 第三方库、插件、知名博客总结 作者大灰狼的小绵羊哥哥关注 2017.06.26 09:4...
    肇东周阅读 16,426评论 4 61
  • 昨晚梦中突然出现一句话,黄发垂髫,并怡然自得,刹那间清醒无比。事隔十年之久,老师的教导依然铭记于心。 那年我们学习...
    忙碌的工艺猿阅读 328评论 0 0
  • 其实这个世界是个胃囊 我们在里面折腾慢慢消磨 最后归于共同的虚无 这个世界什么也不记得 ――《万物生长》 后海有树...
    沫小草阅读 270评论 0 0
  • 官方是这么说的 自动加载类 很多开发者写面向对象的应用程序时对每个类的定义建立一个 PHP 源文件。一个很大的烦恼...
    赵小楠阅读 396评论 0 0

友情链接更多精彩内容