Linux配置文件库[关闭]
Posted
技术标签:
【中文标题】Linux配置文件库[关闭]【英文标题】:Linux configuration file libraries [closed] 【发布时间】:2010-09-13 22:58:28 【问题描述】:有没有什么好的C\C++ 配置文件读取库,可用于在linux 平台上编写的应用程序。我想为我的应用程序提供一个简单的配置文件。充其量我想避开可能会使用户感到困惑的 XML 文件。
【问题讨论】:
我认为您避免使用 XML 的决定是一个很好的决定。除非在紧急情况下,否则 XML 并不是真正的人类可读的。 【参考方案1】:对于单个应用,您可以考虑libconfuse。
如果您需要能够处理多种配置文件格式(例如,对于系统的 Web 门户,需要从许多应用程序中读取和写入多种格式的配置文件),可以使用 Augeas。
【讨论】:
【参考方案2】:Boost program_options 这允许您从配置文件、环境变量和命令行中读取程序选项。它便携且易于使用。
【讨论】:
但是这个库无法保存程序选项。【参考方案3】:问题是您想到的文件格式是什么?属性“simple”有点不规范。 如果您正在寻找可以使用“windows .ini 格式”配置文件的库,您可能需要查看 ACE http://www.cs.wustl.edu/~schmidt/ACE/。
【讨论】:
【参考方案4】:另一个选项是Boost.PropertyTree (doc)。它允许读/写 XML、INI、JSON 和 Info 文件。而且您可以免费获得便携性。
【讨论】:
【参考方案5】:如果您只想要一个简单的配置文件,其中包含命令列表和/或变量设置,那么编写自己的解析器非常容易,如此简单以至于可能不值得使用库。如果您需要更复杂的东西,那么解析器会迅速变得更复杂,并且值得使用现有的库。
我从未尝试过使用 libconfig,但它看起来是个不错的选择,而且我喜欢它使用的配置文件的格式。
您需要决定是否希望您的程序能够编写配置文件。如果它是一个 GUI 程序,您可能会这样做。这会影响哪些库是合适的。
【讨论】:
【参考方案6】:我会推荐'libconfig'。
【讨论】:
【参考方案7】:你可以试试glib's key-value-file-parser
【讨论】:
以上是关于Linux配置文件库[关闭]的主要内容,如果未能解决你的问题,请参考以下文章