MFC中CFile类的使用

来源:百度知道 编辑:UC知道 时间:2024/09/21 16:38:22
我先在一个CFileDialog类中获得文件的完整路径
CString filepath;
CFileDialog FileDlg(TRUE);
if(IDOK==FileDlg.DoModal())
{
CString a("\"");
filepath=FileDlg.GetPathName();
GetDlgItem(IDC_FileName)->SetWindowText(filepath);
filepath=a+filepath;
filepath=filepath+a;

然后想用CFile类写文件。
f.Open(filepath,CFile::modeCreate|CFile::modeRead|CFile::modeNoTruncate);报错。
但是直接输入路径打开文件就可以成功
f.Open("d:\\ReceiveFile.bmp",CFile::modeCreate|CFile::modeRead|CFile::modeNoTruncate);

CString filepath;
CFileDialog FileDlg(TRUE);
if(IDOK==FileDlg.DoModal())
{
filepath=FileDlg.GetPathName();
GetDlgItem(IDC_FileName)->SetWindowText(filepath);
}

f.Open(filepath,CFile::modeCreate|CFile::modeRead|CFile::modeNoTruncate);

这样就可以了吧,不知道为什么你要加双引号。。。

那肯定是因为你的filepath有误,你可以看看filepath代表的是什么

将“filepath=a+filepath;
filepath=filepath+a;”两句去掉即可

CString a("\"");

你这地方错了,改成CString a("\\");