工控编程吧

标题: 上位机MFC如何逐行读取文本文件 [打印本页]

作者: qq263946146    时间: 2019-8-2 15:35
标题: 上位机MFC如何逐行读取文本文件
我们知道文件处理功能,在MFC中对应为CFile.
另外从此类中派生出另一个类,可以一行行读与写文件。
CStdioFile file;
例如我们在界面上准备一个列表控件IDC_LIST1
再用按钮控件调用下面代码
  1. CListBox* pListBox = (CListBox*)GetDlgItem(IDC_LIST1);
  2.         pListBox->ResetContent();

  3.         //创建文件对话框
  4.         CFileDialog dlg(TRUE, NULL, NULL, OFN_HIDEREADONLY |
  5.                 OFN_OVERWRITEPROMPT, _T("文本文件(*.*)|*.*||"));

  6.         if (dlg.DoModal() == IDOK)
  7.         {
  8.                 //获得文件路径
  9.                 CString strPathName = dlg.GetPathName();

  10.                 CStdioFile file;

  11.                 //打开文件
  12.                 if (!file.Open(strPathName, CFile::modeRead))
  13.                 {
  14.                         ::AfxMessageBox(_T("文件打开失败。"));
  15.                         return;
  16.                 }

  17.                 //读文件
  18.                 CString strText = _T("");
  19.                 while (file.ReadString(strText))
  20.                 {
  21.                         pListBox->AddString(strText);
  22.                 }

  23.                 //关闭文件
  24.                 file.Close();
  25.         }
复制代码
代码可以让用户打开一指定文件,将文件内容一行行地读取,显示在列表框控件上。
这里也准备一例程:
(, 下载次数: 1)