本文主要是介绍mfc文件重命名,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
BOOL CDlg::RenameFile(CString strSrc, CString strNew)
{
if (strSrc.IsEmpty() || strNew.IsEmpty())
return FALSE;
if (!PathFileExists(strSrc))
{
AfxMessageBox(NCLoadString(_T("文件或目录不存在.")));
return FALSE;
}
TCHAR szSrc[MAX_PATH] = { 0 };
TCHAR szDesc[MAX_PATH] = { 0 };
lstrcpy(szSrc, strSrc);
lstrcpy(szDesc, strNew);
SHFILEOPSTRUCT FileOp = { 0 };
FileOp.fFlags = 0;
FileOp.pFrom = szSrc;
FileOp.pTo = szDesc;
FileOp.wFunc = FO_RENAME;
int nRet = SHFileOperation(&FileOp);
return nRet == 0;
}
主要用到SHFileOperation函数,参数是一个SHFILEOPSTRUCT 结构体
wFunc 是结构中的一个非常重要的成员,它代表着函数将要进行的操作类型,它的取值为如下:
FO_COPY: 拷贝文件pFrom到pTo 的指定位置。
FO_RENAME: 将pFrom的文件名更名为pTo的文件名。
FO_MOVE: 将pFrom的文件移动到pTo的地方。
FO_DELETE:删除pFrom指定的文件。
推荐一本c++书籍,个人认为写的比较好的,对学习帮助很大的
c++ primer
这篇关于mfc文件重命名的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!