我有以下配置文件:

 [GENERAL_CONFIG]
    filter_subnetworks = 192.168.105.0/24 1.1.0.0/16 192.168.105.0/24
    192.168.105.0/24 1.1.0.0/16 192.168.105.0/24
    192.168.105.0/24 1.1.0.0/16 192.168.105.0/24


我想用g_key_file_get_string_list (gkf, "GENERAL_CONFIG", "filter_subnetworks", &s_len, &error)读取所有子网,但是此功能只能读取一行。

最佳答案

您的输入文件似乎不符合glib Key-value file parser函数所需的格式。

所有键值都应位于一行上,并且应具有显式的列表分隔符(不仅仅是空格),例如;,,请参见g_key_file_set_list_separator()函数。

如果要使用其API,请转换文件以符合必需的glib格式。请注意,一旦将文件保存回去,它将使用glib API,因此“诱骗”它以加载其他内容毫无意义。

关于c - 有没有办法从文件中读取很多行的键值?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/21572950/

10-11 23:21