博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Qt 删除目录
阅读量:6274 次
发布时间:2019-06-22

本文共 1809 字,大约阅读时间需要 6 分钟。

删除目标的目录,若该目录下有子目录,一并删除。

1 //判断是否存在子目录 2 bool judgeDir(QDir dir) 3 { 4     dir.setFilter(QDir::AllEntries | QDir::NoDotAndDotDot | QDir::Hidden); 5     foreach(QFileInfo fileInfo, dir.entryInfoList()) 6     { 7         if(fileInfo.isDir()) 8         { 9             return true;10         }11         else if(fileInfo.isFile())12         {13             return true;14         }15         else16         {17             return false;18         }19     }20     return true;21 }22 23 //删除目标目录24 void delDir(QString path)25 {26     if(path.isEmpty())27     {28         QMessageBox::warning(this,tr("警告"),tr("路径为空"),QMessageBox::Yes);29         return;30     }31     QDir dir(path);32 33     dir.setFilter(QDir::AllEntries | QDir::NoDotAndDotDot | QDir::Hidden);34     foreach(QFileInfo fileInfo, dir.entryInfoList())35     {36         if(fileInfo.isFile())37         {38             if(!fileInfo.isWritable())39             {40                 QFile file(fileInfo.absoluteFilePath());41                 file.setPermissions(QFile::WriteOwner);42             }43 44             fileInfo.dir().remove(fileInfo.fileName());45 46         }47         else if(fileInfo.isDir())48         {49             delDir(fileInfo.absoluteFilePath());50         }51     }52     dir.rmpath(dir.absolutePath());53 }54 55 //删除传入的目录56 void deleteFile(QString path)57 {58     QDir dir(path);59     int saveDel = QMessageBox::question(this,tr("提示"),tr("确定删除目录").arg(path), QMessageBox::Yes | QMessageBox::No );60    61     if(QMessageBox::Yes == saveDel)62     {63         QDir currentDir(path);64         if(judgeDir(currentDir))65         {66             delDir(currentDir.absolutePath());67         }68         else69         {70             dir.rmdir(path);71         }72     }73 }

 

转载于:https://www.cnblogs.com/tyche116/p/8507833.html

你可能感兴趣的文章
Spring中bean注入前后的一些操作:
查看>>
如何让oracle DB、监听和oem开机启动(dbstart)
查看>>
HDU 2639 Bone Collector II(01背包变形【第K大最优解】)
查看>>
MailMail正式发布!注册码免费发放活动开启!(已结束~~不要再回复咧~)
查看>>
一个分层架构设计的例子(2)
查看>>
时态数据库的应用介绍(2)--时态数据库之TimeDB
查看>>
BZOJ 1207: [HNOI2004]打鼹鼠【妥妥的n^2爆搜,dp】
查看>>
Linux kernel scriptes bin2c "\x"
查看>>
当智能交通遇上大数据 智能交通不再是梦
查看>>
iOS开发 - Content hugging priority & Content compression resistance priority
查看>>
centos6下mysql的主从复制的配置
查看>>
Object-C--->Swift之(七)嵌套函数与闭包
查看>>
css继承样式怎么控制?用选择器
查看>>
Http和Https三次握手那些事
查看>>
WCF 添加 RESTful 支持,适用于 IIS、Winform、cmd 宿主
查看>>
105.4. Installing Ganglia on Centos
查看>>
Drupal 曝出代码执行高危漏洞,数百万网站受影响
查看>>
SAP MM 移动类型107和109之研究
查看>>
SAP MM 系统确定供应源优先级
查看>>
交货单打印时提示“没有输出被选择打印”
查看>>