1 #include "mainwindow.h" 2 #include <QApplication> 3 #include <QDebug> 4 #include <QDir> 5 #include <QFileInfo> 6 7 qint64 getitall(const QString &path) 8 { 9 //构造初始化 10 QDir dir(path); 11 qint64 size = 0; 12 13 // foreach(QFileInfo fileinfo,dir.entryInfoList(QDir::Files)) 14 // { 15 // size += fileinfo.size(); 16 // } 17 //递归遍历 18 foreach(QString subdir,dir.entryInfoList(QDir::Dirs|QDir::NoDotAndDotDot)) 19 { 20 size += getitall((path + QDir::separator() + subdir)); 21 } 22 //输出当前大小,以及当前目录 23 qDebug()<<size << qPrintable(path); 24 return size; 25 } 26 27 int main(int argc, char *argv[]) 28 { 29 QApplication a(argc, argv); 30 MainWindow w; 31 w.show(); 32 33 QString path="F:"; 34 getitall(path); 35 return a.exec(); 36 }