下面这个是自己写的一个读配置文件ini格式的一个函数。
第一个参数path是配置文件的路径
第二个参数是要读的键
第三个参数是返回的键值
#define OPEN_FILE_FAILED (-1)
#define READ_SUCCESS (1)
#define NOT_FOUND (0)
int ReadIniFile(char * path, char * key, char * value)
{FILE * fp = NULL;
char ReadBuffer[512] = {0x00};
char *p = ReadBuffer;
char *q = ReadBuffer;
fopen_s(&fp, path, "rb");
if(NULL == fp)
{
return OPEN_FILE_FAILED;
}
while(!feof(fp))
{
fread(p,1,1,fp);
if(*p++ == '\n')
{
if(('#' == ReadBuffer[0]) || (0 == memcmp("//",ReadBuffer,2)))
{
memset(ReadBuffer, 0, sizeof(ReadBuffer));
p = ReadBuffer;
continue;
}
p = ReadBuffer;
while(*p++ != '\0')
{
if('=' == *p)
{
*p = '\0';
p++;
break;
}
}
if(0 == memcmp(key,q,strlen(key)))
{
memcpy(value,p,strlen(p));
memset(ReadBuffer, 0, sizeof(ReadBuffer));
p = ReadBuffer;
q = ReadBuffer;
return READ_SUCCESS;
}
memset(ReadBuffer, 0, sizeof(ReadBuffer));
p = ReadBuffer;
q = ReadBuffer;
}
}
return NOT_FOUND;