taiyang2014

清除缓存

- (float ) folderSizeAtPath:(NSString*) folderPath{
    NSFileManager* manager = [NSFileManager defaultManager];
    if (![manager fileExistsAtPath:folderPath]) return 0;
    NSEnumerator *childFilesEnumerator = [[manager subpathsAtPath:folderPath] objectEnumerator];
    NSString* fileName;
    long long folderSize = 0;
    while ((fileName = [childFilesEnumerator nextObject]) != nil){
        NSString* fileAbsolutePath = [folderPath stringByAppendingPathComponent:fileName];
        folderSize += [self fileSizeAtPath:fileAbsolutePath];
    }
    return folderSize/(1024.0*1024.0);
}


- (long long) fileSizeAtPath:(NSString*) filePath{
    NSFileManager* manager = [NSFileManager defaultManager];
    if ([manager fileExistsAtPath:filePath]){
        return [[manager attributesOfItemAtPath:filePath error:nil] fileSize];
    }
    return 0;
}计算缓存大小
苏相荣  09:50:46
dispatch_async(
               dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT, 0)
               , ^{
                   NSString *cachPath = [NSSearchPathForDirectoriesInDomains(NSCachesDirectory, NSUserDomainMask, YES) objectAtIndex:0];
                   NSLog(@"%@", cachPath);
                  
                   NSArray *files = [[NSFileManager defaultManager] subpathsAtPath:cachPath];
                   NSLog(@"files :%d",[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];});
}
缓存清理

posted on 2015-12-04 17:10  taiyang2014  阅读(181)  评论(0编辑  收藏  举报

导航