c++qdir删除某个文件夹下面除了.stl后缀外的所有文件
时间: 2023-09-07 11:14:21 浏览: 105
linux实现除了某个文件或某个文件夹以外的全部删除
你可以使用QDir的entryList函数获取某个文件夹下的所有文件和文件夹,然后遍历所有文件,如果不是以".stl"结尾的文件,就调用QFile的remove函数删除该文件。以下是示例代码:
```cpp
QDir dir("your/folder/path");
QStringList files = dir.entryList(QDir::Files); // 获取所有文件
for (int i = 0; i < files.size(); ++i) {
QString filename = files.at(i);
if (!filename.endsWith(".stl")) {
QFile::remove(dir.filePath(filename)); // 删除非.stl文件
}
}
```
当然,如果你需要删除子文件夹中的文件,可以使用QDir的entryList函数的第二个参数指定文件类型,并递归遍历所有子文件夹。这个具体实现可以根据你的需求来进行编写。
阅读全文