Qt 常用方法 获取磁盘总大小、可用空间、文件夹大小 文件大小B KB M G转换

这篇具有很好参考价值的文章主要介绍了Qt 常用方法 获取磁盘总大小、可用空间、文件夹大小 文件大小B KB M G转换。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

1.通过QFile获取文件大小

注意:返回的是字节个数

      QFile file("E:/59.raw");
      if (file.open(QIODevice::ReadOnly)) {
          qDebug() << file.size();// byte
      } else {
          qDebug() << "文件打开失败!";
      }

通过QFileInfo获取文件大小

    QFileInfo info("E:/55.raw");
    if (info.exists()) {
        qDebug() << info.size();
    } else {
        qDebug() << "文件路径不存在!";
    }

2. 获取磁盘空间

/**
 * @brief getDiskSpace 获取盘符的容量
 * @param flag 为true则求磁盘总容量,为false则求磁盘剩余容量
 * @return 返回容量,MB为单位
 */
qint64 getDiskSpace(QString path, bool flag)
{
    qint64 res = 0;
    QList<QStorageInfo> storageInfoList = QStorageInfo::mountedVolumes();
    foreach (QStorageInfo storageInfo, storageInfoList) {
        if(path.startsWith(storageInfo.rootPath())){
            if(flag){
                res = storageInfo.bytesTotal()/1024/1024 ;
            }else{
                res = storageInfo.bytesAvailable()/1024/1024 ;
            }

            break;
        }
    }

     return res;
} 

3 .获取选择路径下总文件大小

/**
 * @brief 获取路径下的文件大小:MB
 * @param filePath
 * @return
 */
qint64 getDirSizeMB(const QString filePath){
    qint64 size  = getDirSize(filePath);
    return size/MB;
}

/**
 * @brief 获取路径的文件大小:字节
 * @param filePath
 * @return
 */
qint64 getDirSize(const QString filePath)
{
    QDir tmpDir(filePath);

    qint64 size = 0;

    /*获取文件列表  统计文件大小*/
    foreach(QFileInfo fileInfo, tmpDir.entryInfoList(QDir::Files))
    {
        size += fileInfo.size();
    }

    /*获取文件夹  并且过滤掉.和..文件夹 统计各个文件夹的文件大小 */
    foreach(QString subDir, tmpDir.entryList(QDir::Dirs | QDir::NoDotAndDotDot))
    {
        size += getDirSize(filePath + QDir::separator() + subDir); //递归进行  统计所有子目录
    }

    return size;
}

4. 转换大小单位

bit  === byte  

bit / 8

byte === KB

byte / 1024

KB = MB

KB / 1024

MB = GB

MB / 1024

GB === TB

GB / 1024

Qt 常用方法 获取磁盘总大小、可用空间、文件夹大小 文件大小B KB M G转换,QT,Qt文章来源地址https://www.toymoban.com/news/detail-734894.html

到了这里,关于Qt 常用方法 获取磁盘总大小、可用空间、文件夹大小 文件大小B KB M G转换的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • Ubuntu 查看磁盘空间大小命令

    df命令是Linux系统以磁盘分区为单位查看文件系统,可以加上参数查看磁盘剩余空间信息,命令格式: df -hl 显示格式为: 文件系统              容量 已用 可用 已用% 挂载点 Filesystem            Size Used Avail Use% Mounted on /dev/hda2              45G   19G   24G 4

    2024年02月17日
    浏览(40)
  • 【linux命令】如何查看文件/文件夹所占空间大小

    使用 ls -lh 命令可以查看当前目录下所有文件的大小: 在上面的输出中,第一列是文件的权限和类型,第五列是文件大小。 使用 stat file1.txt 命令可以查看 file1.txt 文件的详细信息 在上面的输出中,第二行是文件大小。 使用 du 命令可以显示文件或目录的磁盘使用情况。你可以

    2024年02月14日
    浏览(113)
  • 【Docker】配置指定大小的磁盘空间

    背景 测试磁盘满时程序的运行情况 问题 如何使用 docker 来模拟磁盘满的情况 解决方法 创建指定大小的数据卷 volume 创建 docker 时,使用该数据卷 在容器中, /home/test/test_io_volumn 文件夹就只有50M大小了

    2024年02月09日
    浏览(46)
  • Deepin/Ubuntu_查看磁盘空间大小

    以下是 Linux 系统( Deepin 、 Ubuntu )查看磁盘空间大小的代码示例: 使用df命令: 使用du命令查看指定目录的磁盘使用情况: 使用lsblk命令: 使用fdisk命令查看磁盘分区表信息: 请注意,在使用这些命令时,请确保具有适当的权限,比如使用 sudo may the odds be ever in your favor ~

    2024年01月20日
    浏览(42)
  • Linux磁盘空间与文件大小查看命令详解

            在Linux系统中,有多个命令可以用来查看磁盘空间的使用情况。最常用的命令是 df (disk free)。 df 命令的 -h 选项以人类可读的方式显示磁盘空间,该命令将显示文件系统的使用情况、剩余空间等信息。         为了查看特定文件夹的大小,我们可以使用 du (

    2024年01月20日
    浏览(59)
  • 电脑C盘空间大小调整 --- 扩容(扩大/缩小)--磁盘分区大小调整/移动

    概述: 此方法适合C盘右边没有可分配空间(空闲空间)的情况,D盘有数据不方便删除D盘分区的情况下,可以使用傲梅分区助手软件进行跨分区调整分区大小,不会损坏数据。反之可直接使用系统的磁盘管理工具进行调整分区大小。 注意: 操作前最好备份一下重要数据,避

    2024年02月16日
    浏览(51)
  • Linux显示磁盘空间不足,/tmp文件夹占用100%问题分析和解决方案

            系统运行过程中发现无法上传文件,第一反应是磁盘空间不足导致,登录服务器后查看文件存放的空间充足,但是无法上传文件且命令行的tab键自动补充也提示空间不足。最后经过搜索和分析发现是/tmp 文件夹占用100%导致。以下记录分析和解决流程。         服

    2024年02月05日
    浏览(68)
  • 查看磁盘信息命令和查看目录以及文件占用空间大小命令

    记录 :313 场景 :在CentOS 7.9操作系统,查看磁盘信息命令、查看目录以及文件占用空间大小命令。主要是df、du、lsblk、fdisk、parted、pvdisplay、vgdisplay、lvdisplay、free等命令。 版本: 操作系统:CentOS 7.9 1.df命令 查看文件系统占用磁盘空间大小。df,disk free简称。 (1)查看帮助 命

    2024年02月07日
    浏览(50)
  • linux 查看磁盘空间 目录 文件 占用 大小 df du

    df 命令的全称是 Disk Free ,显而易见它是统计磁盘中空闲的空间,也即空闲的磁盘块数。它是通过文件系统磁盘块分配图进行计算出的。 du 命令的全称是 Disk Used ,统计磁盘有已经使用的空间。它是直接统计各文件各目录的大小,而不是从硬盘获得信息的。 常用 df -h 常用du

    2024年02月12日
    浏览(49)
  • Windows下Python获取磁盘空闲空间并写入日志的代码

    在研发闲暇时间,将代码过程经常用的一些代码段收藏起来,下边代码是关于Windows下Python获取磁盘空闲空间并写入日志的代码,希望对各位朋友有较大用。 import time import win32file run = True logfile = open(’.log.out’,‘w+’);#open log file input = raw_input(“Input a string for disk name like ‘

    2023年04月08日
    浏览(40)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包