1,bool removeDir(const QString & dirName)
{
bool result = true;
QDir dir(dirName);
if (dir.exists(dirName)) {
Q_FOREACH(QFileInfo info, dir.entryInfoList(QDir::NoDotAndDotDot | QDir::System | QDir::Hidden | QDir::AllDirs | QDir::Files, QDir::DirsFirst)) {
if (info.isDir()) {
result = removeDir(info.absoluteFilePath());
}
else {
result = QFile::remove(info.absoluteFilePath());
}
if (!result) {
return result;
}
}
result = dir.rmdir(dirName);
}
return result;
}
QDir::removeRecursively()
5.0版本以后有效
本文提供了一段使用C++实现的递归删除目录及其内部所有文件的函数,包括处理隐藏文件、系统文件及所有子目录。
468

被折叠的 条评论
为什么被折叠?



