【问题标题】:Which is better? XML, INI, or something else? [closed]哪个更好? XML、INI 还是其他? [关闭]
【发布时间】:2011-10-22 17:44:02
【问题描述】:

我正在用 C 语言编写一个程序,我需要一个配置文件。问题是,我不知道哪个会更好。这个程序看起来非常庞大,有几个部分都试图从同一个配置文件中获取信息。那么有人有什么更好的建议吗?或者可能是我从未想过的事情?

【问题讨论】:

  • 我们不能告诉你,因为你的问题太模糊了。配置文件中会有什么?您在特定平台上吗?在 Windows 上,注册表适用于简单的配置。
  • 配置文件需要手动编辑吗?还是会成为持久化系统值的存储库?
  • 它可以手动编辑,但我确实计划构建一个小的 GUI 来编辑这些值。也许我应该澄清这一点。它将在 *nix 系统上。

标签: c xml ini


【解决方案1】:

使用sqlite,真的。

【讨论】:

    【解决方案2】:

    有一些专用的配置文件库,例如

    • 完全可重入的解析器。可以在并发线程中同时解析独立的配置。
    • C 和 C++ 绑定,以及允许以其他语言创建包装器的挂钩。
    • 一种简单的结构化配置文件格式,比 XML 更易读、更紧凑,比过时但流行的 Windows“INI”文件格式更灵活。
    • 适用于内存受限系统的低占用空间实现(C 库仅 37K,C++ 库仅 76K)。
    • 适当的文档。

    示例配置文件:http://www.hyperrealm.com/libconfig/test.cfg.txt

    【讨论】:

      【解决方案3】:

      我会使用 XML:

      • 简单的手动编辑。
      • 将来,您可以编写一个模型来验证您的配置文件(使用 DTD、XSD、RNG 或 Schematron)。
      • 易于使用任何语言进行解析。

      【讨论】:

      • 我会在验证方面给 +1,但在 简单 编辑方面给 -1。
      • 我同意,XML 不是最简单的方式,也许我应该说“手动编辑”;)
      猜你喜欢
      • 2021-06-09
      • 2010-10-12
      • 2011-03-05
      • 2014-12-07
      • 2013-08-14
      • 2011-01-28
      • 2012-04-19
      • 1970-01-01
      相关资源
      最近更新 更多