1、如何选择文件;
2、选择好文件之后,如果复制;
1st、关于文件选择,可参考下面这段代码:
CString CDcPackerDlg::BootOpenDialog() //返回选橡模择的文闷蔽件名称
{
CString strFile = _T("")
CFileDialogdlgFile(TRUE, NULL, NULL, OFN_HIDEREADONLY, _T("Describe Files (*.cfg)|*.cfg|All Files (*.*)|*.*||"), NULL)
if (dlgFile.DoModal())
{
strFile = dlgFile.GetPathName()
}
return strFile
}
//加载文件按钮
void CDcPackerDlg::OnBnClickedSelectdec()
{
// TODO: Add your control notification handler code here
m_strDescPath = "" //类的成员变量
//"打开文件"对话框,选择文件,返回其路径
m_strDescPath = BootOpenDialog()
}
2nd、文件复制:
2.1 获得程序目录
CString strPath = "", strDir = ""
char filepath[MAX_PATH]
GetModuleFileName(NULL, filepath, MAX_PATH)
strDir.Format("%s", filepath)
strPath = strDir.Left(strDir.ReverseFind('\\'))
2.2 复制文件
在蚂如州MFC下可以用CopyFile()函数,定义如下:
BOOL CopyFile(
LPCTSTR lpExistingFileName, //原文件地址,包括文件名
LPCTSTR lpNewFileName, ////目的文件地址,包括文件名
BOOL bFailIfExists //如果目的文件存在的 *** 作
)
3rd、自己把上面给的代码组装一下,就可以满足你的要求了。
打字不易,如满意,望采纳。
CString strFolderPath="c:\\test"// 判断路径是否存在
if (!PathIsDirectory(m_strFolderPath) )
{
CString strMsg
strMsg.Format ("指定路径\"%s\"不存在,是否创建?", m_strFolderPath)
if (AfxMessageBox(strMsg, MB_YESNO) == IDYES)
{
if (!CreateDirectory(m_strFolderPath, NULL))//here
滑烂轮 {
历迟 strMsg.Format ("创建路径\"%s\"失败!是否继续?", m_strFolderPath)
信信 if (AfxMessageBox(strMsg, MB_YESNO) == IDYES)
return
}
}
}
其实就是一个函数:CreateDirectory
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)