您的位置:首页 > 编程语言 > Qt开发

QT读取文件夹大小

2015-09-17 19:05 381 查看
根据文件夹路径,得到子文件及子文件夹信息,递归调用获得所有子文件大小并累加。

代码比较简单:

quint64 MessagesWidget::dirFileSize(const QString &path)


{ 

    QDir dir(path); 

    quint64 size = 0; 

    //dir.entryInfoList(QDir::Files)返回文件信息 

    foreach(QFileInfo fileInfo, dir.entryInfoList(QDir::Files)) 

    { 

        //计算文件大小 

        size += fileInfo.size(); 

    } 

    //dir.entryList(QDir::Dirs|QDir::NoDotAndDotDot)返回所有子目录,并进行过滤 

    foreach(QString subDir, dir.entryList(QDir::Dirs | QDir::NoDotAndDotDot)) 

    { 

        //若存在子目录,则递归调用dirFileSize()函数 

        size += dirFileSize(path + QDir::separator() + subDir);


}

return size;


}

////////////////////////////////////////////完
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: