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,具体的需求大家根据自己的业务逻辑来处理即可。
走的太远不要忘记为什么出发,你的态度决定你的高度。