Qt获取文件夹下的文件个数(过滤和不过滤的区别)

在文件夹下过滤时可以得到确切的文件个数,而不过滤的会比确切的文件个数多2个

1.文件不过滤

代码

复制代码
    QDir *dir=new QDir("D://capture");
    QStringList filter;
//    filter<<"*.png";
//    dir->setNameFilters(filter); //过滤文件类型
    QList<QFileInfo> *fileInfo=new QList<QFileInfo>(dir->entryInfoList(filter));
    int count=fileInfo->count();  //文件个数
    qDebug()<<"count == " << count;

文件夹的图片

结果:

实际当前文件夹的文件个数是4个,但实际打印的是6个,比确切的文件多了2个 有大佬知道这是为什么?麻烦在评论区告知

2.文件过滤

代码:

复制代码
    QDir *dir=new QDir("D://capture");
    QStringList filter;
    filter<<"*.png";
    dir->setNameFilters(filter); //过滤文件类型
    QList<QFileInfo> *fileInfo=new QList<QFileInfo>(dir->entryInfoList(filter));
    int count=fileInfo->count();  //文件个数
    qDebug()<<"count == " << count;

结果:

可以得到确切的文件个数结果

如果想设置多种文件过滤,只需在后面继续加就好了

复制代码
filter << "*.jpg" << "*.png" << "*.bmp" << "*.gif";
相关推荐
1024奇点4 小时前
【仓颉语言入门 · 第二篇 第 12 课】
开发语言·数据库·ide·mysql·开源
冰暮流星4 小时前
mysql之insert优化
数据库·mysql
海鸥-w5 小时前
数据库冗余字段设计笔记
java·数据库·笔记·oracle
瑞克-桑切斯6 小时前
4、MySQL 索引与事务
数据库·mysql
二宝哥6 小时前
【问题】本地启动springboot项目启动flowable引擎会提示数据库脚本错误,同事本地启动没有报错(MySQL表明大小写敏感参数)
数据库·mysql
John_Hui6 小时前
第 5 篇:Ubuntu 安装 Redis
数据库·redis·缓存
TDengine (老段)6 小时前
TDengine IDMP 十大实用功能(2)
大数据·数据库·chrome·时序数据库·tdengine·idmp·有问有答
Navicat中国6 小时前
Navicat 连接 Redis 数据库
数据库·redis·数据库开发·navicat
东方佑6 小时前
去魅:工具调用、Agent 调用、A2A、MCP、Harness 到底都是什么
服务器·网络·数据库