现在的位置: 首页 > 综合 > 正文

配置文件的读写操作

2013年10月01日 ⁄ 综合 ⁄ 共 1571字 ⁄ 字号 评论关闭

配置文件用来记录登录用户的设置信息,使得在下一次登陆时能够从配置文件中读出相应用户的设置信息,实现的具体代码如下:、

1、先定义个一个结构体,用户所有的信息字段

typedef struct PersonInfo
{
 CString strUserName;
 CString strNickName;
 CString strAddress;
 CString strPhone;
 PersonInfo()
 {
  strNickName="";
  strPhone="";
  strUserName="";
  strAddress="";
 }
 PersonInfo(const PersonInfo &stPersonInfo)
 {
  strUserName=stPersonInfo.strUserName;
  strPhone=stPersonInfo.strPhone;
  strNickName=stPersonInfo.strNickName;
  strAddress=stPersonInfo.strAddress;

 }
};

2、函数实现向配置文件中添加消息记录

void CiniOptDlg::WriteUserInfoConfig(PersonInfo &per)
{

 WritePrivateProfileString(per.strUserName,_T("UserName"),(LPCSTR)per.strUserName,ConfigFilePath); 
 WritePrivateProfileString(per.strUserName,_T("UserNickName"),(LPCSTR)per.strNickName,ConfigFilePath);
 WritePrivateProfileString(per.strUserName,_T("UserAddress"),(LPCSTR)per.strAddress,ConfigFilePath);
 WritePrivateProfileString(per.strUserName,_T("UserPhone"),(LPCSTR)per.strPhone,ConfigFilePath);

}

3、函数实现读取特定用户的信息

void CiniOptDlg::ReadUserInfoConfig(PersonInfo &per,CString readName)
{
 char buf[MAX_PATH];
 DWORD size=MAX_PATH;
 DWORD readlen=GetPrivateProfileString(readName,_T("UserName"),NULL,buf,size,ConfigFilePath);
 buf[readlen]=0;
 per.strUserName=buf;

 DWORD readlen2=GetPrivateProfileString(readName,_T("UserNickName"),NULL,buf,size,ConfigFilePath);
 buf[readlen2]=0;
 per.strNickName=buf;

 DWORD readlen3=GetPrivateProfileString(readName,_T("UserAddress"),NULL,buf,size,ConfigFilePath);
 buf[readlen3]=0;
 per.strAddress=buf;

 DWORD readlen4=GetPrivateProfileString(readName,_T("UserPhone"),NULL,buf,size,ConfigFilePath);
 buf[readlen4]=0;
 per.strPhone=buf;

}

【上篇】
【下篇】

抱歉!评论已关闭.