获取沙盒文件Cache文件内的文件夹的大小
来源:互联网 发布:cydia软件源下载 编辑:程序博客网 时间:2024/06/13 10:36
- (void)videoPlay{
//创建沙盒内的文件夹
NSFileManager *fileManager=[NSFileManager defaultManager];
animationPath = [NSHomeDirectory() stringByAppendingString:@"/Library/Caches/Animation"];
tempPath = [animationPath stringByAppendingPathComponent:@"/Temp"];
cachePath = [animationPath stringByAppendingPathComponent:@"/Cache"];
if (![fileManager fileExistsAtPath:cachePath]) {
[fileManager createDirectoryAtPath:cachePath withIntermediateDirectories:YES attributes:nil error:nil];
}
if (![fileManager fileExistsAtPath:tempPath]) {
[fileManager createDirectoryAtPath:tempPath withIntermediateDirectories:YES attributes:nil error:nil];
}
if ([fileManager fileExistsAtPath:animationPath]) {
float maxSize = [self folderSizeAtPath:animationPath];
//判断文件夹内存是否超出我们的最大值
if (maxSize > 40.f) {
cacheFileArray =[fileManager contentsOfDirectoryAtPath:cachePath error:NULL];
for (NSString *file in cacheFileArray) {
NSString *path =[cachePath stringByAppendingPathComponent:file];
[fileManager removeItemAtPath:path error:nil];
}
tempFileArray =[fileManager contentsOfDirectoryAtPath:cachePath error:NULL];
for (NSString *file in tempFileArray) {
NSString *path =[tempPath stringByAppendingPathComponent:file];
[fileManager removeItemAtPath:path error:nil];
}
}
}
}
//遍历文件夹获得文件夹大小,返回多少MB
- (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;
}
- 获取沙盒文件Cache文件内的文件夹的大小
- iOS 获取沙盒文件夹文件的大小
- Android 获取文件/文件夹/转换文件的大小
- 利用多线程统计文件夹内所有文件的大小
- 计算某个文件或文件夹的大小 文件夹内可能含有子文件夹
- asp 获取文件夹或文件或目录的大小
- C#获取文件夹/文件的大小以及占用空间
- 获取一个文件夹下所有文件的大小
- CMD:[3]获取驱动器或文件夹内的文件列表
- jar文件操作--获取jar包内的文件夹
- 获取文件夹内所有指定后缀的文件
- java获取某个文件夹内所有文件的名称
- 获取文件夹内某一类文件的数量和名称
- 【C++】获取当前文件夹内的所有文件
- 删除文件夹内的文件
- Java获取一个文件夹内的所有文件(包括所有子文件夹内的)
- iOS 简单计算文件Cache的大小
- 获取文件和文件夹大小
- Cocos2d-3.x_读取plist文件
- 黑马程序员--java语言基础程序设计
- 整型数组中出现次数最多的元素
- jQuery-动画与特效
- bfs()出素数环
- 获取沙盒文件Cache文件内的文件夹的大小
- Android实战技巧:ViewStub的应用
- Unbuntu下如何使用SVN
- 第二章
- thinkphp在wamp 配置去掉url中index.php方法
- 第5周项目3 多文件组织
- Evaluating NoSQL performance: Which database is right for your data?
- 安装双系统在window7下卸载ubuntu系统
- Qt中的文件、目录