lizhongjun吧 关注:62贴子:1,388
  • 1回复贴,共1

简单的配置文件读取函数

只看楼主收藏回复

bool GetTextCfgValue(char* CfgText, char* CfgValue)
{
TCHAR lszFilePath[MAX_PATH + 1];
GetModuleFileName(NULL, lszFilePath, MAX_PATH);
(strrchr(lszFilePath, '\\'))[0] = 0;//删除文件名,只获得路径
strcat_s(lszFilePath, MAX_PATH, TEXT("\\Config.txt"));
char cText[128] = { 0 };
FILE* fp = fopen(lszFilePath, "r");
if (fp == NULL) {
return false;
}
else
{
fread(cText, 128, 1, fp); //可以一次读取
fclose(fp);
string strText = string(cText);
string strCfgText = string(CfgText);
int nStartPos=strText.find(strCfgText)+ strCfgText.length()+1;
int nEndPos = strText.find(";", nStartPos);
string strResult=strText.substr(nStartPos, nEndPos- nStartPos);
memcpy(CfgValue, strResult.c_str(), strResult.size());
}
return true;
}
bool bGet=GetTextCfgValue("SerialPort", CfgValue);
Config.txt 文本内容
//通信串口号,数字1-16
SerialPort=1;


IP属地:北京1楼2020-11-26 20:05回复
    #include <stdio.h>
    #include <string>
    using namespace std;


    IP属地:北京2楼2020-11-26 20:06
    回复