0
点赞
收藏
分享

微信扫一扫

QT:获取当前目录下所有的文件(附代码)


QT:获取当前目录下所有的文件(附代码)_后缀

先上代码

需要包含的头文件

#include <QDir>
#include <QDebug> //作为打印程序运行结果使用
QStringList Server_TCP::Tcp_Server_Get_Photo_Dir(QString file_path){

file_path = ".//photo";
QDir dir(file_path);
QStringList file_list;

QStringList nameFilters;
if (dir.exists()) //判断目录是否存在
{
/*

说明
QDir::NoDotAndDotDot
作用:去除 "." ".." 它们分别表示为当前目录、上一级目录

QDir::Files
作用:显示文件(不是文件夹)

QDir::Dirs
作用:显示文件夹

代码示例:

file_list = dir.entryList(QDir::Files | QDir::NoDotAndDotDot | QDir::Dirs);
qDebug() << file_list;

拓展
当你需要查询特定内容(比如说固定的文件格式、特定的文件名)
那你可以根据需要加入前缀、后缀信息来辅助查询

如果你当前的文件夹很多,如:文件夹1、文件夹2、文件夹3...
那你可以通过加入前缀信息来辅助查询,
代码示例:

nameFilters << "文件*";
file_list = dir.entryList(nameFilters,QDir::NoDotAndDotDot | QDir::Dirs);
qDebug() << file_list;

如果你需要查询特定的文件,如图片
可以加入文件格式作为后缀信息来辅助查询
代码示例:

nameFilters << "*.jpg" << "*.png";
file_list = dir.entryList(nameFilters,QDir::Files | QDir::NoDotAndDotDot);
qDebug() << file_list;

*/
nameFilters << "*.jpg" << "*.png";
file_list = dir.entryList(nameFilters,QDir::Files | QDir::NoDotAndDotDot);
qDebug() << file_list;
return file_list;
}
else{

file_list.clear();
qDebug() << "该目录不存在!!!";
return file_list;
}
}

代码仅供学习参考,未经允许,禁止转载



举报

相关推荐

0 条评论