Qt 遍历文件夹下得文件
时间: 2024-09-15 10:12:08 浏览: 47
遍历删除文件夹下所有文件及目录
Qt提供了一个方便的方式来遍历文件夹下的文件,通常可以使用QDir类和它的相关函数。以下是基本步骤:
1. 创建一个`QDir`对象,传入你要遍历的目录路径:
```cpp
QDir dir("/path/to/directory");
```
2. 使用`QDir::entryList()`方法获取目录下的文件和子目录列表:
```cpp
QStringList filePaths = dir.entryList(QDir::Files | QDir::Dirs);
```
`QDir::Files`表示只列出文件,`QDir::Dirs`表示只列出子目录,你可以按需组合。
3. 遍历`filePaths`:
```cpp
for (QString filePath : filePaths) {
if (dir.isFile(filePath)) {
qDebug() << "Found file: " << filePath;
} else if (dir.isDirectory(filePath)) {
qDebug() << "Found directory: " << filePath;
// 如果需要递归遍历子目录,可以再次调用QDir对象并传入子目录路径
QDir subdir(filePath);
QStringList subdirFiles = subdir.entryList();
foreach(QString subdirPath, subdirFiles) {
qDebug() << " - Subdirectory file: " << subdirPath;
}
}
}
```
记得处理可能出现的异常情况,如路径无效或访问权限问题。
阅读全文