QT删除整个文件夹

故事背景:因为客户端要清理旧版本以及日志文件,所以需要删除一个月以前的所有文件夹

技术调研:在程序中我想把文件夹直接删除,但是调用QDir中的rmdir()或者rmpath()时要求文件夹必须是非空的,否则删不掉,查了一下,好多人是通过count()计算出文件夹下的文件数量,然后使用for循环逐个删除,将文件夹清空后再删除文件夹。其实Qt中有直接删除文件夹的函数QDir::removeRecursively(),从Qt 5.0开始引用的,使用这个函数可以直接将文件夹删除,方便快捷。

 

QString del_file = QString("./data/2019-03-23");
QDir dir;
dir.setPath(del_file);
dir.removeRecursively()

 

这只是一个简单的demo,具体的需求大家根据自己的业务逻辑来处理即可。

你可能感兴趣的:(QT删除整个文件夹)