posts - 13, comments - 0, trackbacks - 0, articles - 0
  C++博客 :: 首页 :: 新随笔 :: 联系 :: 聚合  :: 管理

利用statfs 函数计算磁盘剩余空间

Posted on 2010-10-29 15:13 午夜凉饭 阅读(2975) 评论(0)  编辑 收藏 引用 所属分类: Linux
如果想在程序里查看磁盘空间,就要用到statfs()函数。

查看指定路径下硬盘总空间和剩余空间大小的方法:

    struct statfs diskInfo;
    statfs("/",&diskInfo);
    unsigned long long blocksize = diskInfo.f_bsize;// 每个block里面包含的字节数
    unsigned long long totalsize = blocksize * diskInfo.f_blocks;//总的字节数
    printf("TOTAL_SIZE == %lu MB\n",totalsize>>20); // 1024*1024 =1MB  换算成MB单位

    unsigned long long freeDisk = diskInfo.f_bfree*blocksize; //再计算下剩余的空间大小
    printf("DISK_FREE == %ld MB\n",freeDisk>>20);


只有注册用户登录后才能发表评论。
网站导航: 博客园   IT新闻   BlogJava   知识库   博问   管理