MFC应用实例:[48]文件重命名
1、新建一个基于对话框的应用程序,工程名为RenameFile。
![MFC应用实例:[48]文件重命名](https://exp-picture.cdn.bcebos.com/35fa07efa25f0c14b3b039310d89a146b6b13863.jpg)
2、如下图为对话框添加二个按钮,二个编辑框,二个静态文本
![MFC应用实例:[48]文件重命名](https://exp-picture.cdn.bcebos.com/d3c39889a146b7b19832940ec77c34b33d413563.jpg)
3、为“...”按钮建立响应函数OnBTBrown(),在响应函数OnBTBrown()中添加一下代码:void CRenameFileDlg多唉捋胝::OnBTBrown(){ //打开文件对话框 char filter[] = "所有文件(*.*)|*.*||";//设置文件类型过滤 //文件对话框 CFileDialog fdlg(true, NULL, NULL, OFN_HIDEREADONLY | OFN_OVERWRITEPROMPT, filter); fdlg.m_ofn.lpstrInitialDir = "c:\\"; //设置初始文件目录 //弹出对话框,如果单击的是"OK"按钮 if(fdlg.DoModal() == IDOK) { GetDlgItem(IDC_EDIT1)->SetWindowText(fdlg.GetPathName()); }}
![MFC应用实例:[48]文件重命名](https://exp-picture.cdn.bcebos.com/4d3d2ab33c4133baaf8ae8ce6a37c97623bc2f63.jpg)
4、为重命名按钮建立响应函墙绅褡孛数OnBTRename(),在响应函数OnBTRename()中添加一下代码:void CRenameFileDlg::OnBTRename(){ CString src = "";//原文件路径 GetDlgItem(IDC_EDIT1)->GetWindowText(src); CString dst = src; int len = dst.GetLength(); //得到路径长度 int index = dst.ReverseFind('\\') + 1; dst.Delete(index, len - index); CString temp = ""; GetDlgItem(IDC_EDIT2)->GetWindowText(temp); dst += temp; if (MoveFile(src, dst))//重命名 { MessageBox("重命名完成"); } else { MessageBox("重命名失败"); }}
![MFC应用实例:[48]文件重命名](https://exp-picture.cdn.bcebos.com/023cff37c97622bcfc0e24d4a05fd54604962863.jpg)
5、程序重命名运行如下:
![MFC应用实例:[48]文件重命名](https://exp-picture.cdn.bcebos.com/23fd63c5cf672b5f518dee253314f4d0b4032763.jpg)