您的位置:首页 > 移动开发 > IOS开发

iOS 缓存大小 清理

2015-10-29 12:09 513 查看
//遍历文件夹获得文件夹大小,返回文件夹大小

- (float)sizeOfCaches {

    NSFileManager *manager = [NSFileManager
defaultManager];

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

    if ([manager
fileExistsAtPath:cachePath]) {

        NSEnumerator *childFilesEnumerator = [[manager
subpathsAtPath:cachePath]
objectEnumerator];

        NSString *fileName;

        long
long folderSize = 0;

        while ((fileName = [childFilesEnumerator
nextObject]) != nil) {

            NSString *fileAbsolutePath = [cachePath
stringByAppendingPathComponent:fileName];

            if ([manager
fileExistsAtPath:fileAbsolutePath]){

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

            }

        }

        return folderSize / (1024.0 *
1024.0);

    } else {

        return
0;

    }

}

//清理缓存

- (void)cleanCacheFile {

    NSFileManager *fileManager = [NSFileManager
defaultManager];

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

    if ([fileManager
fileExistsAtPath:cachePath]) {

        [fileManager removeItemAtPath:cachePath
error:nil];

    }

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: