在C中解析INI文件的最简单方法是什么?

时间:2013-07-08 17:26:55

标签: c ini fileparsing

关于C ++,Java和C#有一些类似的问题,所以现在我的问题是关于C.如果我有这个配置文件

[BBDD]
user=**
password=***
database=***
IPServidor=*
port=3***

[Device]
dev=8
Temperatura=5=1001
Humedad=7=1002
Link=8=1003
Volt=9=1004

[Device]
dev=10
Temperatura=5=1012
Humedad=7=1013
Link=8=1014
Volt=9=1015

读取Device值的最佳方法是什么。我是linux用户。我使用了glib,但是我遇到了一些问题因为有相同的密钥(Device)所以它返回我,因为教程只说了最后一个Device数组的值。另外我知道Boost有C ++库,我认为libconfig也不用于这种配置文件。最后iniparser对我来说有一个困难的安装指南。你觉得像sscanf,fprintf这样的解决方案好吗?

2 个答案:

答案 0 :(得分:5)

  

最后iniparser对我来说有一个困难的安装指南。你觉得像sscanf,fprintf这样的解决方案好吗?

iniparser可能安装困难,但对于已经运行,已经过测试并处理您没有想过的案例的代码,这是一个小小的权衡。

答案 1 :(得分:0)

使用iniparser时遇到了什么问题?我刚尝试过。我首先在iniparser目录中做了make,然后构建了代码。要使用该库,我执行了以下操作:

gcc test.c ./libiniparser.a

这是因为我在与库相同的目录中创建了测试程序。在C ++中包含iniparser.h时,请确保执行以下操作:

extern "C"
{
#include "src/iniparser.h"
}