美文网首页iOS 开发
文件路径空间大小计算

文件路径空间大小计算

作者: zhangyunjiang | 来源:发表于2016-03-01 11:27 被阅读67次
     #import <Foundation/Foundation.h>
     int main(int argc, const char * argv[]) {
    @autoreleasepool {
        /**
         *  要求计算一个文件中所有文件的大小
         注意:必须先计算一个文件夹中所有文件的大小必须先拿到所有文件,然后再获取所有文件的大小,然后相加
         */
        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;
    }

    相关文章

      网友评论

        本文标题:文件路径空间大小计算

        本文链接:https://www.haomeiwen.com/subject/gtogkttx.html