在MFC里用C++的fstream读取文件
本来打算用CFile的,可是搞了半天都没搞出来,换这个办法了
1 const int MAX = 80;
2 m_fileDlg = new CFileDialog(TRUE);
3 if (m_fileDlg->DoModal() == IDOK)
4 {
5 m_path = m_fileDlg->GetPathName();
6 }
7 ifstream iFile;
8 iFile.open(m_path.GetBuffer());
9 //string txt;
10 char txt[MAX];
11
12 if (iFile.is_open())
13 {
14 CString tmp;
15 while(iFile)
16 {
17 iFile.getline(txt, MAX);
18 CString str(txt);
19 tmp.Append(str);
20 tmp.Append(L"\r\n");
21 }
22 //CString str(txt.c_str());
23 m_edit.SetWindowTextW((LPCTSTR)tmp);
24 }
25 else
26 {
27 MessageBox(L"文件读取出错!");
28 }
29
30 iFile.close();
2 m_fileDlg = new CFileDialog(TRUE);
3 if (m_fileDlg->DoModal() == IDOK)
4 {
5 m_path = m_fileDlg->GetPathName();
6 }
7 ifstream iFile;
8 iFile.open(m_path.GetBuffer());
9 //string txt;
10 char txt[MAX];
11
12 if (iFile.is_open())
13 {
14 CString tmp;
15 while(iFile)
16 {
17 iFile.getline(txt, MAX);
18 CString str(txt);
19 tmp.Append(str);
20 tmp.Append(L"\r\n");
21 }
22 //CString str(txt.c_str());
23 m_edit.SetWindowTextW((LPCTSTR)tmp);
24 }
25 else
26 {
27 MessageBox(L"文件读取出错!");
28 }
29
30 iFile.close();