Linux配置文件库
时间:2020-03-06 14:51:53 来源:igfitidea点击:
是否有可用于linux平台上编写的应用程序的C \ C ++良好配置文件读取库。我想为我的应用程序提供一个简单的配置文件。充其量我想避免可能会引起用户困惑的XML文件。
解决方案
我们可以尝试使用glib的键值文件解析器
Boost program_options这使我们可以从配置文件,环境变量和命令行中读取程序选项。它是便携式的,非常易于使用。
我建议使用" libconfig"。
如果我们只需要一个简单的配置文件,其中包含命令和/或者变量设置的列表,那么编写自己的解析器将非常容易,因为这样很容易使我们不值得使用库。如果我们需要更复杂的东西,则解析器会迅速变得更复杂,并且值得使用现有的库。
我从未尝试过使用libconfig,但它似乎是一个不错的选择,而且我喜欢它使用的配置文件的格式。
我们需要确定是否要让程序能够写入配置文件。如果它是GUI程序,则可能需要这样做。这将影响适合的库。
另一个选项是Boost.PropertyTree(doc)。它允许读取/写入XML,INI,JSON和Info文件。而且我们可以免费获得可移植性。
问题是我们打算使用哪种文件格式?属性"简单"有点规格不足。
如果我们正在寻找可以使用" Windows .ini格式"配置文件的库,则可能需要签出ACE http://www.cs.wustl.edu/~schmidt/ACE/。