libconfig读取列表C.

时间:2015-06-05 09:31:27

标签: c++ c list configuration libconfig

我试图用C中的libconfig库读取这个配置示例,但是没有看到任何读取列表并存储它的示例...

sound = {
         string_length = 50;
         sound_folder = "./bin/sound/";
         sounds_number = 4;
         sounds_list = ( "001_piano.wav", "voz4408.wav", "001_bajo.wav", "001_bateriabuena.wav" );
};

如果有办法加载像sounds_list这样的列表,我该知道什么。并且不要像我现在拥有的那样创建一个结构:

 sounds_list = ( { file_name = "001_piano.wav";},
         { file_name = "voz4408.wav";},
         { file_name = "001_bajo.wav";},
         { file_name = "001_bateriabuena.wav";}
  );

1 个答案:

答案 0 :(得分:0)

您可以使用以下结构:

test_array = ["aaa", "bbb", "ccc"];

如果要解析上面的参数,可以使用以下代码:

libconfig::Config cfg;
cfg.readFile(conf_file.c_str());
const Setting &test_array = cfg.lookup("test_array");
int count = test_array.getLength();
for (int i = 0; i < count; ++i) {
    std::cout << test_array[i] << std::endl;
}

您还可以参考libconfig_manual了解更多信息