iOS 缓存大小 清理

来源:互联网 发布:诚龙网络克隆教程 编辑:程序博客网 时间:2024/05/16 16:09

//遍历文件夹获得文件夹大小,返回文件夹大小

- (float)sizeOfCaches {

    NSFileManager *manager = [NSFileManagerdefaultManager];

    NSString *cachePath = [NSSearchPathForDirectoriesInDomains(NSCachesDirectory,NSUserDomainMask, YES)firstObject];

    if ([manager fileExistsAtPath:cachePath]) {

        NSEnumerator *childFilesEnumerator = [[managersubpathsAtPath:cachePath] objectEnumerator];

        NSString *fileName;

        long long folderSize = 0;

        while ((fileName = [childFilesEnumeratornextObject]) != nil) {

            NSString *fileAbsolutePath = [cachePathstringByAppendingPathComponent:fileName];

            if ([managerfileExistsAtPath:fileAbsolutePath]){

                folderSize += [[manager attributesOfItemAtPath:fileAbsolutePath error:nil]fileSize];

            }

        }

        return folderSize / (1024.0 *1024.0);

    } else {

        return 0;

    }

}


//清理缓存

- (void)cleanCacheFile {

    NSFileManager *fileManager = [NSFileManagerdefaultManager];

    NSString *cachePath =NSSearchPathForDirectoriesInDomains(NSCachesDirectory,NSUserDomainMask, YES).firstObject;

    if ([fileManager fileExistsAtPath:cachePath]) {

        [fileManager removeItemAtPath:cachePatherror:nil];

    }

}


0 0
原创粉丝点击