赞
踩
RemoveAllFiles:实现删除指定目录下的所有文件。包括文件和文件夹,bForce这个参数决定是否删除只读文件。
SetFilePermissions:修改文件权限。如果要删除只读文件,必须先把文件权限修改为只读。
RemoveFilesInDir:调用qt接口实现递归删除指定目录下的所有文件和文件夹。
void RemoveAllFiles( const QString& strDestDir, bool bForce /*= false*/ ) { if (bForce) { SetFilePermissions(strDestDir,QFile::WriteOther); } RemoveFilesInDir(strDestDir); QDir dir(strDestDir); if (!dir.exists()) { dir.mkdir(strDestDir); } } void SetFilePermissions( const QString &path, QFile::Permission euPermission ) { if (path.isEmpty()) { return ; } QDir dir(path); if(!dir.exists()) { return ; } dir.setFilter(QDir::AllEntries | QDir::NoDotAndDotDot); QFileInfoList fileList = dir.entryInfoList(); foreach (QFileInfo fi, fileList) { if (fi.isFile()) { QFile file(fi.absoluteFilePath()); file.setPermissions(euPermission); } else { SetFilePermissions(fi.absoluteFilePath(),euPermission); } } } void RemoveFilesInDir( const QString &path ) { if (!path.isEmpty() && QDir::isAbsolutePath(path)) { QDir dir(path); dir.removeRecursively(); } }
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。