[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{
}
[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; //得到總大小並且返回 }