学习记录-Qt删除文件夹
来源:互联网 发布:开淘宝店铺怎么描述 编辑:程序博客网 时间:2024/06/06 16:47
写的软件需要进行文件夹的复制,开始不怎么懂就找了个拷贝文件夹的代码测试了一下,运行程序选择了源目录和目标目录相同进行拷贝,结果悲剧了。因为是递归拷贝,导致文件夹被嵌套N层,软件死机,强制结束后,产生的文件夹有N多层,右键删除说文件名太长无法删除。网上找了很多方法都无法清理掉这个嵌套的文件夹,折磨了N久,终于想通,既然是Qt生成的嵌套文件夹,为何不用Qt再写一个删除的程序呢?于是动手查看help,找API函数说明,码代码。
//删除文件夹bool MainWindow::DelDir(const QString &path){ if (path.isEmpty()){ return false; } QDir dir(path); if(!dir.exists()){ return true; } dir.setFilter(QDir::AllEntries | QDir::NoDotAndDotDot); //设置过滤 QFileInfoList fileList = dir.entryInfoList(); // 获取所有的文件信息 foreach (QFileInfo file, fileList){ //遍历文件信息 if (file.isFile()){ // 是文件,删除 file.dir().remove(file.fileName()); }else{ // 递归删除 DelDir(file.absoluteFilePath()); } } return dir.rmpath(dir.absolutePath()); // 删除文件夹}这样,新建一个QFileDialog传入文件路径就可以将文件夹彻底删除,不用windows的右键删除了。(在这之前还重启系统去用U盘启动pe系统来删除都没搞定,囧)
使用这个一定要小心,别写错删除了重要的东西,哈哈!
1 0
- 学习记录-Qt删除文件夹
- qt删除非空文件夹
- Qt 文件拷贝 文件夹删除
- 学习记录-Qt文件的读写和删除等操作
- 学习记录-Qt窗口控件的动态添加和删除
- Qt拷贝文件、文件夹、创建文件夹、删除文件夹操作
- QT复制文件夹、删除非空目录
- Qt编程:删除非空文件夹
- QT 学习记录1
- Qt学习记录
- Qt学习记录
- QT学习记录
- QT学习的记录
- QT学习记录-进度条:
- QT学习记录
- qt线程学习记录
- qt学习记录
- Qt 数据库学习记录
- 安卓屏幕适配一次奇怪的bug
- IOS中关于日期,星期几,以及如果更改获取的当前日期的获取问题?
- 运维85条军规
- 如何快糙好猛地在Windows下编译CAFFE并使用其matlab和python接口
- 使用GraphViz画caffe的网络结构图
- 学习记录-Qt删除文件夹
- js form onsubmit 表单提交
- 1.2.5对指针使用const限定符
- 关于图像特征提取
- 《健康时报》:请不要随便输液
- 二维图形变换
- IO
- 用Java根据错误值解析出错误类型和错误码
- android之旅4: XML方式读写数据与文件创建