goconfig使用解析

栏目: Go · 发布时间: 6年前

内容简介:参考:goconfig 是一个由 Go 语言开发的针对 Windows 下常见的 INI 格式的 配置文件解析器。该解析器在涵盖了所有 INI 文件操作的基础上,又针对Go 语言实际开发过程中遇到的一些需求进行了扩展。相对于其它 INI 文件解析器而言,该解析器最大的优势在于 对注释的极佳 支持;除此之外,支持 多个配置文件覆盖加载 也是非常特别但好用的功能。

参考: https://github.com/Unknwon/go-rock-libraries-showcases/tree/master/lectures/01-goconfig

goconfig 简介

goconfig 是一个由 Go 语言开发的针对 Windows 下常见的 INI 格式的 配置文件解析器。该解析器在涵盖了所有 INI 文件操作的基础上,又针对Go 语言实际开发过程中遇到的一些需求进行了扩展。相对于其它 INI 文件解析器而言,该解析器最大的优势在于 对注释的极佳 支持;除此之外,支持 多个配置文件覆盖加载 也是非常特别但好用的功能。

主要特性

  • 提供与WindowsAPI一模一样的操作方式 - 支持递归读取分区
  • 支持自增键名
  • 支持对注释的读与写操作
  • 支持直接返回指定类型的键值 - 支持多个文件覆盖加载

    下载安装

  • 通过gopm安装:
    gopm get github.com/Unknwon/goconfig
  • 通过goget安装:
    go get github.com/Unknwon/goconfig
  • API文档:GoWalker

    基本使用方法

    • 加载配置文件:

      cfg, err := goconfig.LoadConfigFile("conf.ini")

  • 基本读写操作:

    value, err := cfg.GetValue(goconfig.DEFAULT_SECTION,"key_default")

    isInsert := cfg.SetValue(goconfig.DEFAULT_SECTION,"key_default", "这是新的值”)

  • 注释读写操作:

    comment := cfg.GetSectionComments("super")

    comment = cfg.GetKeyComments("super", "key_super")

    v := cfg.SetKeyComments("super", "key_super", "# 这是新的键注释") v = cfg.SetSectionComments("super", "# 这是新的分区注释")

  • 类型转换读取:
    vInt, err := cfg.Int("must", "int")
  • Must系列方法:
    vBool := cfg.MustBool("must", "bool")
  • 删除指定键值:
    ok := cfg.DeleteKey("must", "string")
  • 保存配置文件:

    err = goconfig.SaveConfigFile(cfg, "conf_save.ini")

    高级使用方法

    高级使用方法

  • 多文件覆盖加载:
    cfg, err := goconfig.LoadConfigFile("conf.ini", "conf2.ini") err = cfg.AppendFiles("conf3.ini")
  • 配置文件重载:
    err = cfg.Reload()
  • 为Must系列方法设置缺省值:
    vBool := cfg.MustBool("must", "bool404", true)
  • 递归读取键值
    • 子孙分区覆盖读取 - 自增键名获取
  • 获取整个分区:

    高级使用方法

    sec, err := cfg.GetSection("auto increment")

    总结

    goconfig 包的 API 提供非常全面,用法非常简单,但核心代码并不多,各位 同学有兴趣的可以阅读其源代码。

  • 使用案例:
    gopm、beego - i18n、beeweb、wetalk、gowalker

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持 码农网

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

计算机程序设计艺术:第4卷 第4册(双语版)

计算机程序设计艺术:第4卷 第4册(双语版)

Donald E.Knuth / 苏运霖 / 机械工业出版社 / 2007-4 / 42.00元

关于算法分析的这多卷论著已经长期被公认为经典计算机科学的定义性描述。迄今已出版的完整的三卷组成了程序设计理论和实践的惟一的珍贵源泉,无数读者都赞扬Knuth的著作对个人的深远影响。科学家们为他的分析的美丽和优雅所惊叹,而从事实践的程序员们已经成功地应用他的“菜谱式”的解到日常问题上,所有人都由于Knuth在书中所表现出的博学、清晰、精确和高度幽默而对他无比敬仰。   为开始后续各卷的写作并更......一起来看看 《计算机程序设计艺术:第4卷 第4册(双语版)》 这本书的介绍吧!

HTML 压缩/解压工具
HTML 压缩/解压工具

在线压缩/解压 HTML 代码

HSV CMYK 转换工具
HSV CMYK 转换工具

HSV CMYK互换工具