读书人

VS2010 MFC 抉择文件并显示 路径 和 大

发布时间: 2012-09-27 11:11:17 作者: rapoo

VS2010 MFC 选择文件并显示 路径 和 大小
初学MFC,写了一个小应用,选择文件显示其文件路径和文件大小。在win2003能成功运行,并显示结果。
但是在win 7 的环境下就显示无法打开文件,还有显示文件大小为0的情况。编译环境是VS2010



关键代码

C/C++ code
/*    m_file 是CFile类型的,    m_filePath和m_fileName都是CString类型的*/void Cno1Dlg::OnBnClickedButton1(){    CFileDialog dlg(TRUE);    if(dlg.DoModal() == IDCANCEL)        return;        if(m_file.m_hFile != CFile::hFileNull)        OnClose();    m_fileName = dlg.GetFileName();    if(!m_file.Open(m_fileName, CFile::modeCreate || CFile::modeReadWrite))    {        AfxMessageBox(_T("无法打开文件"));        m_fileName.Empty();        return;    }     m_filePath = dlg.GetPathName();        SetDlgItemTextW(IDC_EDIT1,m_filePath); //在IDC_EDIT1里显示文件路径    SetDlgItemInt(IDC_EDIT2,m_file.GetLength()/1024); //在IDC_EDIT2显示文件大小,单位是K,}


[解决办法]
探讨
引用:

m_fileName = dlg.GetFileName();
---》
m_fileName = dlg.GetPathName();
------------------------------------
CFileDialog::GetPathName 返回的是文件的绝对路径
CFileDialog::GetFileName 返回的是文件的文件名,
……

读书人网 >C++

热点推荐