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

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

一、功能介绍

实际项目中经常需要获取当前系统磁盘或者指定磁盘的使用情况,下面使用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


目录
相关文章
|
6月前
|
API 开发工具 C语言
C语言与图形界面:利用GTK+、Qt等库创建GUI应用。
C语言与图形界面:利用GTK+、Qt等库创建GUI应用。
396 0
|
6月前
|
网络协议 容器
【qt】 TCP编程小项目
【qt】 TCP编程小项目
106 0
关于Qt的pri模块化编程详解
关于Qt的pri模块化编程详解
|
6月前
|
JavaScript Java Go
【Qt】Qt编程注意事项
【Qt】Qt编程注意事项
|
9月前
|
Windows 安全 C++
Qt字符串类应用与常用基本数据类型
Qt字符串类应用与常用基本数据类型
|
9月前
|
开发框架 物联网 云计算
Qt应用领域分析与实践
Qt应用领域分析与实践
277 0
|
9月前
|
XML 网络协议 关系型数据库
Qt框架概述与应用实例
Qt框架概述与应用实例
156 0
|
9月前
|
开发框架 Linux API
Qt:构建高效且用户友好的跨平台应用
Qt:构建高效且用户友好的跨平台应用
|
9月前
|
开发框架 网络协议 数据库
Qt:构建跨平台应用的强大框架
Qt:构建跨平台应用的强大框架
|
9月前
|
Ubuntu 编译器 Linux
Ubuntu下Qt编程,从QT的安装到编写notepad
Ubuntu下Qt编程,从QT的安装到编写notepad
103 0