QT怎么判断一个目录为空

2025-10-09 09:42:01

1、1、QT中有一个叫QDir的类,这个类是针对目录进行操作相关的,通过查阅QT的帮助文档就可以看到该类和它支持的接口

QT怎么判断一个目录为空

2、2、下面通过QDir来实现判断目录是否为空的功能,主要是使用它里面的entryInfoList函数

QT怎么判断一个目录为空

3、3、点击entryInfoList,展开这个函数的详细解释,这个函数会返回目录所有的文件和子目录

QFileInfoList QDir::entryInfoList(Filters filters = NoFilter, SortFlags sort = NoSort)

返回一个QFileInfoList 的文件列表结构

QT怎么判断一个目录为空

4、4、接下来用代码简单实现判断

QDir dir("F:\\123test");

do 

{

if (!dir.exists())

{

break;

}

dir.setFilter(QDir::Files | QDir::Dirs | QDir::NoDotAndDotDot);

QFileInfoList list = dir.entryInfoList();

int file_count = list.count();

if (file_count <= 0)

{

break;

}

QStringList string_list;

for (int i = 0; i < list.count(); i++)

{

QFileInfo file_info = list.at(i);

qDebug("name %s!", file_info.fileName());

}

} while (0);

QT怎么判断一个目录为空

5、5、接下来运行程序,在文件数量的位置下个断点,看看是否可以检查到文件数量,由下图可以看到获取的文件数是正确的

QT怎么判断一个目录为空

QT怎么判断一个目录为空

6、6、接下来把目录里的文件全删除,重新运行程序,看看能否判断为空,由下图可以看到获取的数量是0,所以可以通过这种方法来判断目录是否为空

QT怎么判断一个目录为空

QT怎么判断一个目录为空

声明:本网站引用、摘录或转载内容仅供网站访问者交流或参考,不代表本站立场,如存在版权或非法内容,请联系站长删除,联系邮箱:site.kefu@qq.com。
猜你喜欢