QT应用编程: 使用QStorageInfo 获取磁盘的使用情况

QT(C++)应用软件开发 专栏收录该内容
126 篇文章 59 订阅

一、功能介绍

实际项目中经常需要获取当前系统磁盘或者指定磁盘的使用情况,下面使用QT里的QStorageInfo 类获取磁盘信息,得到磁盘容量和使用情况。

二、核心代码

void MainWindow::GetDiskInfo()
{
    //获取当前系统盘(Linux系统就是根目录)的磁盘情况
    QStorageInfo ROM = QStorageInfo::root();
    ROM.refresh();  //获得最新磁盘信息
    qDebug() <<"文件系统路径:"<<ROM.rootPath();
    if(ROM.isReadOnly())qDebug() << "只读文件系统:" << ROM.isReadOnly();
    qDebug() << "文件系统类型:" << ROM.fileSystemType();
    qDebug() << "总大小:" << ROM.bytesTotal()/1024/1024/1024 << "GB";
    qDebug() << "可用空间:" << ROM.bytesAvailable()/1024/1024/1024 << "GB";

    //获取指定目录的磁盘情况,直接设置路径即可
    QStorageInfo SD;
    SD.setPath("/mnt/hgfs/linux-share-dir/QT");
    SD.refresh();  //获得最新磁盘信息
    qDebug() <<"文件系统路径:"<< SD.rootPath();
    if(SD.isReadOnly())qDebug() << "只读文件系统:" << SD.isReadOnly();
    qDebug() << "文件系统类型:" << SD.fileSystemType();
    qDebug() << "总大小:" << SD.bytesTotal()/1024/1024/1024 << "GB";
    qDebug() << "可用空间:" << SD.bytesAvailable()/1024/1024/1024 << "GB";
}

三、运行结果

文件系统路径: "/"
文件系统类型: "ext4"
总大小: 48 GB
可用空间: 12 GB
文件系统路径: "/mnt/hgfs"
文件系统类型: "fuse.vmhgfs-fuse"
总大小: 225 GB
可用空间: 28 GB

 

  • 1
    点赞
  • 0
    评论
  • 7
    收藏
  • 打赏
    打赏
  • 扫一扫,分享海报

参与评论
请先登录 后发表评论~
©️2021 CSDN 皮肤主题: 撸撸猫 设计师:马嘣嘣 返回首页

打赏作者

DS小龙哥

你的鼓励将是我创作的最大动力

¥2 ¥4 ¥6 ¥10 ¥20
输入1-500的整数
余额支付 (余额:-- )
扫码支付
扫码支付:¥2
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、C币套餐、付费专栏及课程。

余额充值