MFC中用c++语言对配置文件操作(读、写)
来源:互联网 发布:2寸照片剪裁软件 编辑:程序博客网 时间:2024/06/06 03:07
一.在VS2015中创建新项目->MFC应用程序->基于对话框
二.在对话框中添加两个Button控件,分别更名为:读配置文件、写配置文件,再添加一个Edit编辑框
三.双击“读配置文件”Button进入代码编写,添加如下代码:
void CConfigurationFileDlg::OnBnClickedButton1(){ // TODO: 在此添加控件通知处理程序代码 char tServerip[MAX_PATH] = { 0 }; DWORD dret = GetPrivateProfileString(_T("serverinfo"), _T("addr"), _T("du cuo le"), tServerip, 50, _T("D:\\VSProject\\ConfigurationFile\\Release\\config.ini")); m_serverip = tServerip; m_port = GetPrivateProfileInt(_T("serverinfo"), _T("port"), -1, _T("D:\\VSProject\\ConfigurationFile\\Release\\config.ini")); CFile file1("D:\\VSProject\\ConfigurationFile\\Release\\config.ini ", CFile::modeRead); char *pBuf; int iLen = file1.GetLength(); pBuf = new char[iLen + 1]; file1.Read(pBuf, iLen); pBuf[iLen] = 0; file1.Close(); SetDlgItemText(IDC_EDIT_TEST, pBuf);}
四.双击“写配置文件”进入代码编写,添加如下代码:
void CConfigurationFileDlg::OnBnClickedButton2(){ // TODO: 在此添加控件通知处理程序代码 BOOL Bw1 = WritePrivateProfileString(_T("serverinfo"), _T("addr"), "192.168.0.2", _T("D:\\VSProject\\ConfigurationFile\\Release\\config.ini")); BOOL Bw2 = WritePrivateProfileString(_T("serverinfo"), _T("port"), "81", _T("D:\\VSProject\\ConfigurationFile\\Release\\config.ini")); if (!Bw2) ::MessageBox(NULL,_T("写入失败"),_T("失败"),0); else ::MessageBox(NULL,_T("写入成功"),_T("成功"),0);}
注意:在读文件时也要双击一下Edit编辑框,否则无法找到IDC_EDIT_TEST
*重要函数:GetPrivateProfileString
//为初始化文件中指定的条目取得字串,是编辑语言中的一种函数结构。
函数原型:
DWORD GetPrivateProfileString(lpszSection, lpszKey, lpszDefault,lpReturnedString, cchReturnBuffer, lpszFile)
参数及类型说明:
lpApplicationName String,欲在其中查找条目的小节名称。这个字串不区分大小写。如设为vbNullString,就在lpReturnedString缓冲区内装载这个ini文件所有小节的列表。lpKeyName String,欲获取的项名或条目名。这个字串不区分大小写。如设为vbNullString,就在lpReturnedString缓冲区内装载指定小节所有项的列表lpDefault String,指定的条目没有找到时返回的默认值。可设为空("")lpReturnedString String,指定一个字串缓冲区,长度至少为nSizenSize Long,指定装载到lpReturnedString缓冲区的最大字符数量lpFileName String,初始化文件的名字。如没有指定一个完整路径名,windows就在Windows目录中查找文件
*重要函数:SetDlgItemTex
//在对话框中设置控件的标题或文本。
语法:
BOOL WINAPI SetDlgItemText( _In_ HWND hDlg, _In_ int nIDDlgItem, _In_ LPCTSTR lpString);
参数:
hDlg [in]类型:HWND包含该控件的对话框的句柄。nIDDlgItem [in]类型:int要设置标题或文本的控件。lpString [in]类型:LPCTSTR要复制到控件的文本。
返回值:
类型:BOOL如果函数成功,则返回值为非零。如果函数失败,返回值为零。要获得扩展错误信息,请调用GetLastError。
*重要函数:WritePrivateProfileString
//将一个字符串复制到初始化文件的指定部分。
语法:
BOOL WINAPI WritePrivateProfileString( _In_ LPCTSTR lpAppName, _In_ LPCTSTR lpKeyName, _In_ LPCTSTR lpString, _In_ LPCTSTR lpFileName);
参数:
lpAppName [in]字符串将被复制到的部分的名称。如果该部分不存在,则创建该部分。该部分的名称是与案例无关的; 该字符串可以是大写和小写字母的任意组合。lpKeyName [in]与字符串关联的键的名称。如果指定部分中不存在该键,则会创建该键。如果此参数为NULL,则删除整个部分(包括该部分中的所有条目)。lpString [in]一个零封端的字符串写入文件。如果此参数为NULL,则删除由lpKeyName参数指向的键。lpFileName [in]初始化文件的名称。如果该文件是使用Unicode字符创建的,则该函数会将Unicode字符写入该文件。否则,该函数将写入ANSI字符。
返回值:
如果函数成功地将字符串复制到初始化文件中,则返回值不为零。如果函数失败,或者刷新最近访问的初始化文件的缓存版本,则返回值为零。要获得扩展错误信息,请调用 GetLastError。
O(∩_∩)O哈哈~到这对配置文件的读写操作就算完了
阅读全文
0 0
- MFC中用c++语言对配置文件操作(读、写)
- MFC中用c++语言对注册表操作(写、开机自启)
- MFC中用c++语言对文件操作(复制、删除、写入)
- Linux中用C语言写系统日志
- Linux中用C语言写系统日志
- Linux中用C语言写系统日志
- Linux中用C语言写系统日志
- linux中用C语言对环境变量设置
- linux中用C语言对环境变量设置
- linux中用C语言对环境变量设置
- 【C语言】【unix c】文件的操作(文件的打开,关闭,读,写,读写位置重定位)(对文件内容的操作)
- C语言中用bsearch()实现查找操作
- C 语言中用bsearch()实现查找操作
- C 语言中用bsearch()实现查找操作
- C语言写文件操作(一)
- MFC中用c++语言实现连接SQLServer2008(附添加操作)
- C语言 写文件操作
- c++(MFC)对文件的基本操作
- java基于redis客户端redisson的RPC远程服务调用
- 新手学习mybatis总结
- 【数据结构】【C】顺序栈
- 技术分享连载(四十三)
- python3 使用 fabric3 模块实现密钥登录远程主机
- MFC中用c++语言对配置文件操作(读、写)
- 【bzoj2073】[POI2004]PRZ
- JVM内存、堆模型、垃圾回收器总结
- 部署 Kubernetes 集群日志插件 Fluentd、Elasticsearch、Kibana
- mysql分区表 partition
- Spring IOC原理源码解析(@Autowired原理详解 :标识构造函数)(一 )
- 记录开发过程
- ABP官方文档(五十二)【集成EntityFramework MySQL】
- Handler消息机制--面试篇