故事背景:由于客户端要清理旧版本以及日志文件,因此须要删除一个月之前的全部文件夹函数
技术调研:在程序中我想把文件夹直接删除,可是调用QDir中的rmdir()或者rmpath()时要求文件夹必须是非空的,不然删不掉,查了一下,好多人是经过count()计算出文件夹下的文件数量,而后使用for循环逐个删除,将文件夹清空后再删除文件夹。其实Qt中有直接删除文件夹的函数QDir::removeRecursively(),从Qt 5.0开始引用的,使用这个函数能够直接将文件夹删除,方便快捷。spa
QString del_file = QString("./data/2019-03-23"); QDir dir; dir.setPath(del_file); dir.removeRecursively()
这只是一个简单的demo,具体的需求你们根据本身的业务逻辑来处理便可。日志