工控编程吧

标题: 上位机MFC如何在INI文件中读写数据 [打印本页]

作者: qq263946146    时间: 2019-8-2 15:49
标题: 上位机MFC如何在INI文件中读写数据
Ini文件的后缀为.ini。可以用于程序参数的读写操作。
对应的处理函数为GetPrivateProfileString
WritePrivateProfileString。

比如我们事先在程序同级目录准备一个文件。
  1. char c[MAX_PATH];
  2.         GetModuleFileName(NULL,c,MAX_PATH);
  3.         m_strFileName = c;
  4.         m_strFileName = m_strFileName.Left(m_strFileName.ReverseFind('\\')+1);
  5.         m_strFileName = m_strFileName+_T("Demo.ini");

复制代码
再准备三个编辑框用于输入键名,键值等信息,就可以执行读写操作了。
  1. CString strSectionName = _T("");
  2.         GetDlgItemText(IDC_TEXT1, strSectionName);
  3.         CString strKeyName = _T("");
  4.         GetDlgItemText(IDC_TEXT2, strKeyName);

  5.         CString strKeyValue = _T("");

  6.         //在INI文件中读字符串数据
  7.         ::GetPrivateProfileString(strSectionName, strKeyName, _T(""),
  8.                 strKeyValue.GetBuffer(1024), 1024, m_strFileName);

  9.         strKeyValue.ReleaseBuffer();

  10.         SetDlgItemText(IDC_TEXT3, strKeyValue);
复制代码

  1. void CGkbc8Dlg::OnTest2()
  2. {
  3.         CString strSectionName = _T("");
  4.         GetDlgItemText(IDC_TEXT1, strSectionName);
  5.         CString strKeyName = _T("");
  6.         GetDlgItemText(IDC_TEXT2, strKeyName);
  7.         CString strKeyValue = _T("");
  8.         GetDlgItemText(IDC_TEXT3, strKeyValue);

  9.         //在INI文件中读字符串数据
  10.         bool b=::WritePrivateProfileString(strSectionName, strKeyName, strKeyValue, m_strFileName);
  11. }
复制代码
例如例程:
(, 下载次数: 1)