zoukankan      html  css  js  c++  java
  • iOS清理缓存 2016-04-19

    //计算缓存文件的大小
    - (NSString *)getCacheSize
    {
        //定义变量存储总的缓存大小
        long long sumSize = 0;
       
        //01.获取当前图片缓存路径
        NSString *cacheFilePath = [NSHomeDirectory() stringByAppendingPathComponent:@"Library/Caches"];
       
        //02.创建文件管理对象
        NSFileManager *filemanager = [NSFileManager defaultManager];
       
        //获取当前缓存路径下的所有子路径
        NSArray *subPaths = [filemanager subpathsOfDirectoryAtPath:cacheFilePath error:nil];
       
        //遍历所有子文件
        for (NSString *subPath in subPaths) {
            //1).拼接完整路径
            NSString *filePath = [cacheFilePath stringByAppendingFormat:@"/%@",subPath];
            //2).计算文件的大小
            long long fileSize = [[filemanager attributesOfItemAtPath:filePath error:nil]fileSize];
            //3).加载到文件的大小
            sumSize += fileSize;
        }
        float size_m =((float)sumSize)/(1024*1024);
        return [NSString stringWithFormat:@"%.2fM",size_m];
       
    }

    //清理缓存
    -(void)myClearCacheAction{
        dispatch_async(
                       dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT, 0)
                       , ^{
                           NSString *cachPath = [NSSearchPathForDirectoriesInDomains(NSCachesDirectory, NSUserDomainMask, YES) objectAtIndex:0];
                           NSArray *files = [[NSFileManager defaultManager] subpathsAtPath:cachPath];
                           NSLog(@"files :%lu",(unsigned long)[files count]);
                           for (NSString *p in files) {
                               NSError *error;
                               NSString *path = [cachPath stringByAppendingPathComponent:p];
                               if ([[NSFileManager defaultManager] fileExistsAtPath:path]) {
                                   [[NSFileManager defaultManager] removeItemAtPath:path error:&error];
                               }
                           }
                           [self performSelectorOnMainThread:@selector(clearCacheSuccess) withObject:nil waitUntilDone:YES];});
    }

    -(void)clearCacheSuccess
    {
        [self hiddenHUD];
        [self showTips:@"清除数据成功!"];
        [self.tableView reloadData];
    }
  • 相关阅读:
    关于terminal
    如何从word、excel、ppt中提取flash文件?
    backbone event inherit
    backbonejscomplexmodel
    ssh
    on off trigger
    从数组中删除指定值
    jstl 标签报错 Unterminated <%@ page tag 错误 .
    selenium + python自动化测试环境搭建
    自勉一则
  • 原文地址:https://www.cnblogs.com/cfl911014/p/5408122.html
Copyright © 2011-2022 走看看