Qt 删除目录
删除目标的目录,若该目录下有子目录,一并删除。
//判断是否存在子目录
bool judgeDir(QDir dir)
{
dir.setFilter(QDir::AllEntries | QDir::NoDotAndDotDot | QDir::Hidden);
foreach(QFileInfo fileInfo, dir.entryInfoList())
{
if(fileInfo.isDir())
{
return true;
}
else if(fileInfo.isFile())
{
return true;
}
else
{
return false;
}
}
return true;
} //删除目标目录
void delDir(QString path)
{
if(path.isEmpty())
{
QMessageBox::warning(this,tr("警告"),tr("路径为空"),QMessageBox::Yes);
return;
}
QDir dir(path); dir.setFilter(QDir::AllEntries | QDir::NoDotAndDotDot | QDir::Hidden);
foreach(QFileInfo fileInfo, dir.entryInfoList())
{
if(fileInfo.isFile())
{
if(!fileInfo.isWritable())
{
QFile file(fileInfo.absoluteFilePath());
file.setPermissions(QFile::WriteOwner);
} fileInfo.dir().remove(fileInfo.fileName()); }
else if(fileInfo.isDir())
{
delDir(fileInfo.absoluteFilePath());
}
}
dir.rmpath(dir.absolutePath());
} //删除传入的目录
void deleteFile(QString path)
{
QDir dir(path);
int saveDel = QMessageBox::question(this,tr("提示"),tr("确定删除目录").arg(path), QMessageBox::Yes | QMessageBox::No ); if(QMessageBox::Yes == saveDel)
{
QDir currentDir(path);
if(judgeDir(currentDir))
{
delDir(currentDir.absolutePath());
}
else
{
dir.rmdir(path);
}
}
}
Qt 删除目录的更多相关文章
- Qt递归拷贝和删除目录
最近在翻看项目代码时,看到了这两个函数,想到这个功能十分常用,因此拿出来与大家分享,希望对大家有用.几点说明: 1.记得当初写代码那会,是参考了网上的帖子写的,做了一点小修改.因此代码源于网络. 2. ...
- Qt 文件处理(readLine可以读取char[],并且有qSetFieldWidth qSetPadChar 等全局函数)
Qt 文件处理 Qt提供了QFile类来进行文件处理,为了更方便地处理文本文件或二进制文件,Qt还提了QTextStream类和QDataStream类,处理临时文件可以使用QTemporaryFil ...
- QT | 记录自己遇到的报错
QT 常见报错,及相应对策 0. 遇到所有莫名其妙的问题(完全按照教程,但一直报错) 删除工程文件同级目录下的构建文件(以build开头的文件夹) 重新执行qmake 重新构建项目 检查所有的路径问题 ...
- 零基础学QT编程
吴迪.2010.1 北京航空航天大学出版社 Qt资源 CSDN QT http://bbs.csdn.net/forums/Qt/ QT编程网 http://www.qtbcw.com/ 编程论坛 ...
- Qt QFileSystemModel QDirModel 示例代码, 使用方法
1. QFileSystemModel 查看,添加 和 删除目录 2. 实现代码 dialog.h #ifndef DIALOG_H #define DIALOG_H #include <QD ...
- Qt文本读写之二:目录操作
一.简介 QDir类用来访问目录结构及其内容,可以操作路径名.访问路径和文件相关信息以及操作底层的文件系统,还可以访问Qt的资源系统.Qt使用"/"作为通用的目录分隔符和URLs的 ...
- 安装包设计-------安装(QT)---------知识总结
1.判断文件是否存在 QFile file(path): file.exists(); 2.复制文件 bool copy(const QString &fileName, const QStr ...
- Qt:QDir
0.说明 QDir提供了访问目录及目录下内容的类. QDir既可以用于访问文件系统,也可以用于访问Qt 资源系统(Qt's resource system.). Qt用 "/" 作 ...
- QT内省机制、自定义Model、数据库
本文将介绍自定义Model过程中数据库数据源的获取方法,我使用过以下三种方式获取数据库数据源: 创建 存储对应数据库所有字段的 结构体,将结构体置于容器中返回,然后根据索引值(QModelIndex) ...
随机推荐
- castle.dynamicProxy学习笔记
目的: 可以将castle.dynamicProxy当成代码生成器,快速的生成自己想的代码.这个库经历了这么多年的测试,应该可以用了:D 概念: IInterceptor:拦截器 当方法(属性的本质是 ...
- django 部署一个简单的博客系统
转:https://www.cnblogs.com/fnng/p/3737964.html 写的目的, 加深影响,熟悉开发流程, 开发都是练出来的. 环境 python3.5 windows 7 1. ...
- linux下查看端口是否被占用以及查看所有端口
1.查看服务器端口是否被占用 >lsof -i:8081 2.查看服务器所有端口 >netstat -ntlp 3.查看服务器是否开放某端口 tcp端口:>netstat -ntp ...
- Unity3D — — UGUI之RectTransform
Mask.GetComponent<RectTransform>().anchoredPosition(子物体) = hotKey_image.rectTransform.anchored ...
- java中JVM的原理
转载:https://blog.csdn.net/witsmakemen/article/details/28600127 一.java虚拟机的生命周期: Java虚拟机的生命周期 一个运行中的Jav ...
- Spring入门学习笔记(4)——JDBC的使用
目录 Spring JDBC框架概览 JdbcTemplate类 配置数据源 数据访问对象(Data Access Object,DAO) 执行SQL命令 Spring JDBC框架概览 使用传统的J ...
- HPUX系统启动后主机名为unknown的解决办法
HPUX系统启动完成后,主机名为unknown,查看/etc/rc.log出现如下报错: unknown:[/]grep -i error /etc/rc.log /sbin/rc1.d/S320 ...
- 某简单易懂的人脸识别 API 的开发环境搭建和简易教程
最近接了个人脸识别相关的项目,是基于某个非常简单易懂的人脸识别 API:face_recognition 做的.这个库接口非常傻瓜,很适合新手上手,而且可以研究其源码来学习 dlib 这个拥有更加灵活 ...
- 03_set slice的时间复杂度
set slice O(n+k) 使用切片赋值来解释set slice的时间复杂度 (1) 对li[0:3]赋值首先会删除1,2,3,空出来的位置被后面的元素依次向前移动填充,由del slice 得 ...
- SQL中读取Excel 以及 bpc语言
--开启导入功能 reconfigure reconfigure --允许在进程中使用ACE.OLEDB.12 --允许动态参数 EXEC master.dbo.sp_MSset_oledb_prop ...