ios 关于文件操作 获取 文件大小

  分类: Apple IPhone
ios 语言 manager 测试 c

c语言 实现

 

#include "sys/stat.h"

- (long long) fileSizeAtPath:(NSString*) filePath{  

    struct stat st;  
    if(lstat([filePath cStringUsingEncoding:NSUTF8StringEncoding], &st) == 0){  
        return st.st_size;  
    }  
    return 0;  
}  

 

objective-c 语言实现

-(long long) fileSizeAtPath:(NSString*) filePath{  

  NSFileManager* manager = [NSFileManager defaultManager];  

  if ([manager fileExistsAtPath:filePath]){  

    return [[manager attributesOfItemAtPath:filePath error:nil] fileSize];  

  }  

  return 0;  

}  

 

如果将两种方法循环1000次,我们就可以发现两者之间巨大的性能差距了,在我的测试环境中,结果如下,c函数的耗时仅是oc方法的5%,在此推荐 c语言

 

一个空的文件夹 其中获取大小为68k ,应该是系统文件吧,如果知道的人,欢迎留言

你可能感兴趣的:(ios 关于文件操作 获取 文件大小)