本文整理汇总了C++中DiskFile::Rename方法的典型用法代码示例。如果您正苦于以下问题:C++ DiskFile::Rename方法的具体用法?C++ DiskFile::Rename怎么用?C++ DiskFile::Rename使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类DiskFile
的用法示例。
在下文中一共展示了DiskFile::Rename方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1:
bool Par1Repairer::RenameTargetFiles(void) {
vector<Par1RepairerSourceFile*>::iterator sf = sourcefiles.begin();
// Rename any damaged target files
while (sf != sourcefiles.end()) {
Par1RepairerSourceFile *sourcefile = *sf;
// If the target file exists but is not a complete version of the file
if (sourcefile->GetTargetExists() &&
sourcefile->GetTargetFile() != sourcefile->GetCompleteFile()) {
DiskFile *targetfile = sourcefile->GetTargetFile();
// Rename it
diskfilemap.Remove(targetfile);
if (!targetfile->Rename())
return false;
backuplist.push_back(targetfile);
bool success = diskfilemap.Insert(targetfile);
assert(success);
// We no longer have a target file
sourcefile->SetTargetExists(false);
sourcefile->SetTargetFile(0);
}
++sf;
}
sf = sourcefiles.begin();
// Rename any missnamed but complete versions of the files
while (sf != sourcefiles.end()) {
Par1RepairerSourceFile *sourcefile = *sf;
// If there is no targetfile and there is a complete version
if (sourcefile->GetTargetFile() == 0 &&
sourcefile->GetCompleteFile() != 0) {
DiskFile *targetfile = sourcefile->GetCompleteFile();
// Rename it
diskfilemap.Remove(targetfile);
if (!targetfile->Rename(sourcefile->FileName()))
return false;
bool success = diskfilemap.Insert(targetfile);
assert(success);
// This file is now the target file
sourcefile->SetTargetExists(true);
sourcefile->SetTargetFile(targetfile);
// We have one more complete file
completefilecount++;
}
++sf;
}
return true;
}