我有以下Config.cfg
[DD]
user=**
password=***
database=***
IPServidor=****
port=***
[Controller]
Control1=8
Temp=5
Hum=7
Link=8
Volt=9
[Controller]
Control2=10
Temp=5
Hum=7
Link=8
Volt=9
我想只读取控制器的值并将它们打印到屏幕上,如
Controller_8: 5,7,8,9
我不想使用libconfig或glib,因为我遇到了未定义函数的问题。我做了安装,我有标题,但我不知道为什么它不起作用。所以我想要另一个解决方案我的第一个想法是使用strchr来找到我想要的行(在我的情况下忽略[DD]表)并使用strtok来获取temp,hum,link,volt的值
char buffer1[100];
FILE *f = fopen("/home/pi/Desktop/Config.cfg","r");
while(fgets(buffer1, sizeof(buffer1), f))
{
printf("%s",buffer1);
char *pos1 = strchr(buffer1,'Controller');
if (pos1)
{
item = strtok (buffer1,"Control");
printf("Results: %s\n", buffer1);
}
}
以上代码不正确。只是一个想法。还有更好的办法吗?
答案 0 :(得分:0)
不要尝试解析ini文件,使用现有的库。
Ini文件解析包含在许多“框架”中,例如Gtk+或Windows。如果您无法访问它们,您仍然可以使用某个独立库,例如:http://ndevilla.free.fr/iniparser/