golang-viper 配置文件使用简介
install
1 | go get github.com/spf13/viper |
配置项优先级
- 显式调用
Set
- flag
- env
- config
- key/value store
- default
简单示例
1 | viper.SetConfigName("config") // 不要写扩展名,不然找不到文件。看样子又是个bug v1.11.0 |
写入配置
- WriteConfig 写到预定义的位置,文件不存在会报错
- SafeWriteConfig 写到预定义位置,创建文件,文件存在不会覆盖
- WriteConfigAs 写到指定位置,创建文件,覆盖文件
- SafeWriteConfigAs 写到指定位置,创建文件,不会覆盖文件
踩坑
control characters are not allowed
检查配置文件夹下是否有和配置文件 文件名 相同扩展名不同的文件
viper 配合 cobra 使用 参照 [golang-cobra 使用教程](https://www.szerr.cn/blog/code/golang-cobra 使用教程/)
本作品采用
知识共享署名-非商业性使用-相同方式共享 4.0
国际许可协议
进行许可。