qfile 拷贝

//拷贝文件: bool MyTest007::copyFileToPath(QString sourceDir ,QString toDir, bool coverFileIfExist) { toDir.replace(“\\”,”/”); if (sourceDir == toDir){ return true; } if (!QFile::exists(sourceDir)){ return false; } QDir *createfile = new QDir; bool exist = createfile->exists(toDir); if (exist){ if(coverFileIfExist){ createfile->remove(toDir); } }//end if if(!QFile::copy(sourceDir, toDir)) { return false; } return true; } //拷贝文件夹: bool MyTest007::copyDirectoryFiles(const QString &fromDir, const QString &toDir, bool coverFileIfExist) { QDir sourceDir(fromDir); QDir targetDir(toDir); if(!targetDir.exists()){ /**< 如果目标目录不存在,则进行创建 */ if(!targetDir.mkdir(targetDir.absolutePath())) return false; } QFileInfoList fileInfoList = sourceDir.entryInfoList(); foreach(QFileInfo fileInfo, fileInfoList){ if(fileInfo.fileName() == “.” || fileInfo.fileName() == “..”) continue; if(fileInfo.isDir()){ /**< 当为目录时,递归的进行copy */ if(!copyDirectoryFiles(fileInfo.filePath(), targetDir.filePath(fileInfo.fileName()), coverFileIfExist)) return false; } else{ /**< 当允许覆盖操作时,将旧文件进行删除操作 */ if(coverFileIfExist && targetDir.exists(fileInfo.fileName())){ targetDir.remove(fileInfo.fileName()); } /// 进行文件copy if(!QFile::copy(fileInfo.filePath(), targetDir.filePath(fileInfo.fileName()))){ return false; } } } return true; }
<

免责声明:文章内容来自互联网,本站不对其真实性负责,也不承担任何法律责任,如有侵权等情况,请与本站联系删除。
转载请注明出处:qfile 拷贝 https://www.yhzz.com.cn/a/17491.html

上一篇 2023-05-21 16:11:13
下一篇 2023-05-21 16:49:27

相关推荐

联系云恒

在线留言: 我要留言
客服热线:400-600-0310
工作时间:周一至周六,08:30-17:30,节假日休息。