美文网首页
iOS清楚缓存功能实现

iOS清楚缓存功能实现

作者: 白水灬煮一切 | 来源:发表于2017-05-31 17:14 被阅读44次

    第一种实现也是最便捷的方法:

    SDWebImage自带缓存计算和清理缓存方法!我们可以把要缓存的文件都放在这个SDWebImage缓存图片的路径下面!

    //获取缓存多大

    SDImageCache *saImage = [SDImageCache sharedImageCache];

    bufferLabel.text = [NSString stringWithFormat:@"%.2fM",saImage.getSize/1024./1024.];

    //清理缓存

    [[SDImageCache sharedImageCache] clearDiskOnCompletion:nil];

    [[SDImageCache sharedImageCache] clearMemory];//可有可无

    第二种:自己计算某个文件的大小,逐渐累加:

    __block NSUInteger size = 0;    dispatch_sync(self.ioQueue, ^{        NSDirectoryEnumerator *fileEnumerator = [_fileManager enumeratorAtPath:self.diskCachePath];        for (NSString *fileName in fileEnumerator) {            NSString *filePath = [self.diskCachePath stringByAppendingPathComponent:fileName];            NSDictionary*attrs = [[NSFileManager defaultManager] attributesOfItemAtPath:filePath error:nil];

    size += [attrs fileSize];

    }

    });

    //清理某文件缓存

    [_fileManager removeItemAtPath:self.diskCachePath error:nil];

    [_fileManager createDirectoryAtPath:self.diskCachePath

    withIntermediateDirectories:YES

    attributes:nil

    error:NULL];

    相关文章

      网友评论

          本文标题:iOS清楚缓存功能实现

          本文链接:https://www.haomeiwen.com/subject/ezsjfxtx.html