檔案記憶體空間大小計算,記憶體空間大小計算
/**
* 要求計算一個檔案中所有檔案的大小
注意:必須先計算一個檔案夾中所有檔案的大小必須先拿到所有檔案,然後再擷取所有檔案的大小,然後相加
*/
NSFileManager *manager=[NSFileManager defaultManager];
//提取要求計算的檔案
NSArray *arr=[manager subpathsAtPath:@"/Users/zhangyunjiang/Desktop"];
NSMutableString *strM=[NSMutableString string];
NSMutableString *strM1=[NSMutableString string];
for (int i=0; i<arr.count; i++) {
//將檔案中所有檔案名稱添加到字串
[strM appendFormat:@"////Users/zhangyunjiang/Desktop/%@",arr[i]];
}
//將添加檔案名稱的字串轉變成為數組
NSArray *arr1=[strM componentsSeparatedByString:@"///"];
for (int j=0; j<arr.count; j++) {
//從數組中提取每一個檔案名稱的屬性內容
NSDictionary *dic=[manager attributesOfItemAtPath:(arr1[j]) error:nil];
//尋找內容中檔案所佔記憶體大小
NSString *str3=dic[NSFileSize];
[strM1 appendFormat:@"-%@",str3];
}
//進行計算
NSArray *arr2=[strM1 componentsSeparatedByString:@"-"];
double sum=0;
for (int i=0; i<arr2.count; i++) {
NSString *str3=[arr2 objectAtIndex:i];
if (str3==nil) {
}
else
{
sum+=[str3 intValue];
}
}
//將空間轉換成為GM
double newsum=sum/1024/1024/1024;
NSLog(@"%f",sum);
NSLog(@"%f",newsum);
}
return 0;