美文网首页
计算设备剩余的空间

计算设备剩余的空间

作者: forping | 来源:发表于2019-04-22 12:05 被阅读0次

方法一:

+ (NSNumber *)freeDiskSpace {
    NSDictionary *fattr = [[NSFileManager defaultManager] attributesOfFileSystemForPath:NSHomeDirectory() error:nil];
    NSNumber *totalSpace = [fattributes objectForKey:NSFileSystemSize];
    NSNumber *freeSpace [fattr objectForKey:NSFileSystemFreeSize];

    return freeSpace;  
}

方法二:

#include <sys/param.h>
#include <sys/mount.h>

+ (unsigned long long)freeDiskSpace{
    struct statfs buf;
    unsigned long long freeSpace = -1;
    if (statfs("/var", &buf) >= 0) {
          freeSpace = (unsigned long long)(buf.f_bsize * buf.f_bavail);
    }
    return freeSpace;
}

方法三:

+ (NSNumber *)freeDiskSpace {
    NSError *error = nil;
    NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
    NSDictionary *dictionary = [[NSFileManager defaultManager] attributesOfFileSystemForPath:[paths lastObject] error: &error];
    if (dictionary)
    {
        NSNumber *freeSpace = [dictionary objectForKey:NSFileSystemFreeSize];        
        NSNumber *totalSpace = [dictionary objectForKey:NSFileSystemSize];
       return freeSpace;
    } 
  return nil;
}

相关文章

网友评论

      本文标题:计算设备剩余的空间

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