现在的位置: 首页 > 自动控制 > 工业·编程 > 正文

VC读配置文件的实现

2012-07-28 23:38 工业·编程 ⁄ 共 913字 ⁄ 字号 暂无评论

这也算自己的一点积累,虽然这些东西很简单但是毕竟是自己的,喜悦。

以MFC为例子:

CString strCMD=Getkey("CMD","CMDNAME");//读配置文件的某个字段

配置文件格式如下:(配置文件必须在exe的同目录下)

[CMD]

CMDNAME="ping www.163.com"

Getkey函数如下

CString C**Dlg::Getkey(CString strTopic, CString strValue)
{
CString strret;
char inivalue[100],filename[MAX_PATH];
memset(inivalue,   0,   100);  
memset(filename,   0,   MAX_PATH);  
sprintf(filename,"%s//Config.ini",Getapppath());   //在第二个参数中可以更改ini文件的名字
GetPrivateProfileString(strTopic,strValue,"",inivalue,sizeof(inivalue),filename);  
strret   =   inivalue;  
return   strret;
}

Getapppath函数如下

CString C**Dlg::Getapppath()
{
char   exepath[MAX_PATH];  
CString  strdir,tmpdir;   
memset(exepath,   0,   MAX_PATH);  
GetModuleFileName(NULL,   exepath,   MAX_PATH);  
tmpdir   =   exepath;  
strdir   =   tmpdir.Left(tmpdir.ReverseFind ('//'));  
return   strdir;
}

这样,就可以把配置文件中的字符串读出来了,要是想检查一下是否读出,可以加些消息,如:

if (strCMD=="")
{
  AfxMessageBox("配置文件读取错误,请检查Config.ini是否在应用程序的相同路径下");
  CDialog::OnCancel();
}

给我留言

留言无头像?