计算ios某个路径下文件的大小
2014-05-30 14:18
501 查看
首先调用这个方法
[self getMPSize]
-(NSString *)getMPSize {
NSString*sizeTypeW = @"bytes";
NSString * cachesString = [NSSearchPathForDirectoriesInDomains(NSCachesDirectory, NSUserDomainMask, YES) lastObject];
NSString * imageFileString = [cachesString stringByAppendingPathComponent:@"DownloadImages"]; NSLog(@"====--------%@",imageFileString);
//这里是获得你的路径
NSFileManager *manager = [NSFileManager defaultManager];
long long app = [self folderSize:cachesString];
// 先计算总路径总大小
if([manager fileExistsAtPath:imageFileString] == YES){//判断你的子路径存不存在
long long working = [self folderSize:imageFileString];//存在就调用这个方法获得文件的大小
NSLog(@"-----------------------%llu",working);
if(working<1){
//从这里开始是计算文件大小
return @"Size: Zero KB";
}else{
if (working > 1024) {
//Kilobytes working = working / 1024; sizeTypeW = @" KB";
}
if (working > 1024) {
//Megabytes
working = working / 1024;
sizeTypeW = @" MB"; }
if (working > 1024) {
//Gigabytes
working = working / 1024;
sizeTypeW = @" GB"; }
return [NSString stringWithFormat:@" Working: %lld %@ ", working,sizeTypeW]; }
}else{
return [NSString stringWithFormat:@"App: %lld MB, Working: Zero KB",app/1024/1024];
}
[manager release]; }
//存在就调用这个方法获得文件的大小
- (unsigned long long int)folderSize:(NSString *)folderPath { //根据传过来的文件路径
NSArray *filesArray = [[NSFileManager defaultManager] subpathsOfDirectoryAtPath:folderPath error:nil]; //这是找到所有的文件夹
NSEnumerator *filesEnumerator = [filesArray objectEnumerator]; //遍历文件夹
NSString *fileName;
unsigned long long int fileSize = 0;
while (fileName = [filesEnumerator nextObject]) {
NSDictionary *fileDictionary = [[NSFileManager defaultManager] attributesOfItemAtPath:[folderPath stringByAppendingPathComponent:fileName] error:nil];
fileSize += [fileDictionary fileSize]; //得到总的大小 }
return fileSize;
//得到总大小并且返回 }
[self getMPSize]
-(NSString *)getMPSize {
NSString*sizeTypeW = @"bytes";
NSString * cachesString = [NSSearchPathForDirectoriesInDomains(NSCachesDirectory, NSUserDomainMask, YES) lastObject];
NSString * imageFileString = [cachesString stringByAppendingPathComponent:@"DownloadImages"]; NSLog(@"====--------%@",imageFileString);
//这里是获得你的路径
NSFileManager *manager = [NSFileManager defaultManager];
long long app = [self folderSize:cachesString];
// 先计算总路径总大小
if([manager fileExistsAtPath:imageFileString] == YES){//判断你的子路径存不存在
long long working = [self folderSize:imageFileString];//存在就调用这个方法获得文件的大小
NSLog(@"-----------------------%llu",working);
if(working<1){
//从这里开始是计算文件大小
return @"Size: Zero KB";
}else{
if (working > 1024) {
//Kilobytes working = working / 1024; sizeTypeW = @" KB";
}
if (working > 1024) {
//Megabytes
working = working / 1024;
sizeTypeW = @" MB"; }
if (working > 1024) {
//Gigabytes
working = working / 1024;
sizeTypeW = @" GB"; }
return [NSString stringWithFormat:@" Working: %lld %@ ", working,sizeTypeW]; }
}else{
return [NSString stringWithFormat:@"App: %lld MB, Working: Zero KB",app/1024/1024];
}
[manager release]; }
//存在就调用这个方法获得文件的大小
- (unsigned long long int)folderSize:(NSString *)folderPath { //根据传过来的文件路径
NSArray *filesArray = [[NSFileManager defaultManager] subpathsOfDirectoryAtPath:folderPath error:nil]; //这是找到所有的文件夹
NSEnumerator *filesEnumerator = [filesArray objectEnumerator]; //遍历文件夹
NSString *fileName;
unsigned long long int fileSize = 0;
while (fileName = [filesEnumerator nextObject]) {
NSDictionary *fileDictionary = [[NSFileManager defaultManager] attributesOfItemAtPath:[folderPath stringByAppendingPathComponent:fileName] error:nil];
fileSize += [fileDictionary fileSize]; //得到总的大小 }
return fileSize;
//得到总大小并且返回 }
相关文章推荐
- 计算从ios照片库中选取的图片文件大小
- iOS中计算文件夹中文件大小
- IOS中计算文件的大小
- IOS 计算文件的大小
- iOS 简单计算文件Cache的大小(项目中用了IASKAppSettingsViewController,一个设置界面的库)
- ios 计算文件夹大小 列举目录/文件
- IOS根据路径读取文件大小
- iOS开发-基础:获取指定路径文件大小
- 计算ios沙盒中的文件大小
- IOS 音频开发文件大小计算
- 计算从ios照片库中选取的图片文件大小
- iOS_计算文件大小
- iOS中计算缓存文件的大小判断
- iOS判断沙盒文件,计算文件总量,查看IOS沙盒中文件的属性(修改日期,创建日期,大小等)
- ios 获取指定路径文件大小
- IOS中计算文件的大小
- iOS 计算缓存文件大小 删除缓存
- IOS根据路径读取文件大小
- iOS 计算缓存文件的大小
- iOS 计算文件夹中包含所有文件的大小