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];
    }
  • 相关阅读:
    追踪神秘的成都Uber:月入2万元是现实还是传说
    打造自己博客(wordpress)的wap手机版本
    今天刚申请成为Uber司机 已经接了5单了....大家有什么想问的吗?
    UBER司机奖励政策
    原生应用native、Web应用、混合应用hybrid:3者的优缺点解析
    “基数排序”之数组中缺失的数字
    html5 新增语义标签
    如何判断Javascript对象是否存在
    HTML 5 <details> 标签
    html5 notifications通知
  • 原文地址:https://www.cnblogs.com/cfl911014/p/5408122.html
Copyright © 2011-2022 走看看