直接上代码
#include <QCoreApplication>
#include <QDir>
#include <QDebug>
void traverseFolder(const QDir& folder)
{
// 获取文件夹中所有文件和子文件夹
QFileInfoList list = folder.entryInfoList(QDir::Dirs | QDir::Files | QDir::NoDotAndDotDot);
for (const QFileInfo& fileInfo : list) {
if (fileInfo.isDir()) {
// 如果是文件夹,递归遍历
QDir subFolder(fileInfo.absoluteFilePath());
traverseFolder(subFolder);
} else {
// 如果是文件,输出文件名和路径
qDebug() << "fileName:" << fileInfo.fileName() << "Path:" << fileInfo.absoluteFilePath();
}
}
}
int main(int argc, char *argv[])
{
QCoreApplication a(argc, argv);
// 遍历的根文件夹
QDir folder("D:/test/");
traverseFolder(folder);
return a.exec();
}