-1
我想重命名文件夾中的所有文件都具有相同的名稱,但擴展名不同。我到處尋找解決方案。到目前爲止,我已經寫了下面的代碼,但它不重命名文件..任何想法將不勝感激?重命名文件夾中的關聯文件
void someFunction(){
char drive[_MAX_DRIVE];
char dir[_MAX_DIR];
char fname[_MAX_FNAME];
char ext[_MAX_EXT];
_splitpath(m_DirTree.GetCurrentDir(), drive, dir, fname, ext);
CString fpath(_T(m_DirTree.GetCurrentDir()));
CString filenameWithoutExtension = fpath.Left(fpath.ReverseFind(_T('.')));
CString fileContainer = fpath.Left(fpath.ReverseFind(_T('\\'))); // eg. L:\PowerStar 5 Demo II\Programs\Demo\Programs
fpath = fileContainer + _T("\\"); // eg. L:\PowerStar 5 Demo II\Programs\Demo\Programs\
CString fileN = fpath + fname + _T(".***"); // eg. L:\PowerStar 5 Demo II\Programs\Demo\Programs\TestX.***
WIN32_FIND_DATA data;
HANDLE h = FindFirstFile(fpath, &data);
if(h!=INVALID_HANDLE_VALUE)
{
do
{
CString hpath = (fpath + myPRGName + _T(".***")); // eg. L:\PowerStar 5 Demo II\Programs\Demo\Programs\TestY.***
rename(fileN, hpath);
} while(FindNextFile(h,&data));
}
else {
cout << "Error: No such folder." << endl;
}
FindClose(h);
}
}
}