QT删除整个文件夹
程序员文章站
2022-07-02 20:45:05
故事背景:因为客户端要清理旧版本以及日志文件,所以需要删除一个月以前的所有文件夹 技术调研:在程序中我想把文件夹直接删除,但是调用QDir中的rmdir()或者rmpath()时要求文件夹必须是非空的,否则删不掉,查了一下,好多人是通过count()计算出文件夹下的文件数量,然后使用for循环逐个删 ......
故事背景:因为客户端要清理旧版本以及日志文件,所以需要删除一个月以前的所有文件夹
技术调研:在程序中我想把文件夹直接删除,但是调用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,具体的需求大家根据自己的业务逻辑来处理即可。
上一篇: 为这块屏幕一加花了一个亿 果粉看了都心动