使用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();
加载中,请稍候......