本文转载连接: http://blog.sina.com.cn/s/blog_8d3a834d01015fd8.html
使用MFC读取文件中的内容是程序设计中经常用到的功能,我也使用过还几次了,但是每一次写的时候还是会出现很多的问题,所以将每次出现的问题,记录下来,保存运行正确的程序,这样,下一次写程序的时候就会少走弯路。
CFileDialog cFileDialog( TRUE, NULL, NULL, OFN_HIDEREADONLY|OFN_OVERWRITEPROMPT|OFN_ALLOWMULTISELECT,
"All Files (*.*)|*.*||", AfxGetMainWnd());//第1步 取得路径
CString strFilePath = "";
CString strFileName = "";
if(cFileDialog.DoModal()==IDOK)
{
m_strFilePath = cFileDialog.GetPathName();
strFileName = cFileDialog.GetFileName();
UpdateData(false);
}
int input = 0;
ifstream inout;
inout.open(strFileName,ios::in);
if(!inout)
{
cerr<<"Unable to open file!"<<endl;
}
else
{
cout<<"打开文件成功"<<endl;
}
char nextline[256];
CString temp_str = "";
CString m_temp = "";
while(inout.getline(nextline, sizeof(nextline)))
{
temp_str = nextline;
m_temp += temp_str;
m_temp += "\r\n"; //MFC的编辑框需要使用“\r\n”来识别换行,单单一个“\n”是不够的。
}
m_original = m_temp ;
AfxMessageBox(m_original);
UpdateData(false);
inout.close();
inout.clear();