golang怎么读取ini、json、yaml配置文件
发表于:2025-11-07 作者:千家信息网编辑
千家信息网最后更新 2025年11月07日,本文小编为大家详细介绍"golang怎么读取ini、json、yaml配置文件",内容详细,步骤清晰,细节处理妥当,希望这篇"golang怎么读取ini、json、yaml配置文件"文章能帮助大家解决
千家信息网最后更新 2025年11月07日golang怎么读取ini、json、yaml配置文件日常项目中,读取各种配置文件是避免不了的,这里介绍一个能读取多种配置文件的库,viper
本文小编为大家详细介绍"golang怎么读取ini、json、yaml配置文件",内容详细,步骤清晰,细节处理妥当,希望这篇"golang怎么读取ini、json、yaml配置文件"文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一起来学习新知识吧。
日常项目中,读取各种配置文件是避免不了的,这里介绍一个能读取多种配置文件的库,viper
viper读取ini文件
config := viper.New()config.AddConfigPath("./conf/") // 文件所在目录config.SetConfigName("b") // 文件名config.SetConfigType("ini") // 文件类型 if err := config.ReadInConfig(); err != nil { if _, ok := err.(viper.ConfigFileNotFoundError); ok { fmt.Println("找不到配置文件..") } else { fmt.Println("配置文件出错..") }} host := config.GetString("redis.host") // 读取配置fmt.Println("viper load ini: ", host)b.ini文件如下
[mysql]username='root'password='123456' [redis]host='127.0.0.1'poet=3306 [mongodb]user='admin'password='admin'
viper读取json文件
config := viper.New()config.AddConfigPath("./conf/")config.SetConfigName("c")config.SetConfigType("json") if err := config.ReadInConfig(); err != nil { if _, ok := err.(viper.ConfigFileNotFoundError); ok { fmt.Println("找不到配置文件..") } else { fmt.Println("配置文件出错..") }} version := config.GetString("version")origin := config.GetString("host.origin") fmt.Println(version)fmt.Println(origin) // 读取到map中host := config.GetStringMapString("host")fmt.Println(host)fmt.Println(host["origin"])fmt.Println(host["port"]) allSettings := config.AllSettings()fmt.Println(allSettings)c.json文件如下
{ "version": "2.0", "secret": "footmark", "host": { "origin": "http://www.baidu.com", "port": 8080 }}viper读取yaml文件
config := viper.New()config.AddConfigPath("./conf/")config.SetConfigName("a")config.SetConfigType("yaml") if err := config.ReadInConfig(); err != nil { if _, ok := err.(viper.ConfigFileNotFoundError); ok { fmt.Println("找不到配置文件..") } else { fmt.Println("配置文件出错..") }} host := config.GetString("database.host")fmt.Println("viper load yml: ", host) allSettings := config.AllSettings()fmt.Println(allSettings)a.yaml文件如下
database: host: 127.0.0.1 user: root dbname: test pwd: 123456
viper常用方法
// viper 常用读取配置的方法Get(key string) : interface{}GetBool(key string) : boolGetFloat64(key string) : float64GetInt(key string) : intGetIntSlice(key string) : []intGetString(key string) : stringGetStringMap(key string) : map[string]interface{}GetStringMapString(key string) : map[string]stringGetStringSlice(key string) : []stringGetTime(key string) : time.TimeGetDuration(key string) : time.DurationIsSet(key string) : boolAllSettings() : map[string]interface{}读到这里,这篇"golang怎么读取ini、json、yaml配置文件"文章已经介绍完毕,想要掌握这篇文章的知识点还需要大家自己动手实践使用过才能领会,如果想了解更多相关内容的文章,欢迎关注行业资讯频道。
文件
配置
文章
内容
常用
方法
妥当
多种
思路
所在
文件名
新知
更多
步骤
目录
知识
知识点
篇文章
类型
细节
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
腾讯网络安全大师
安徽好莱坞互联网科技
邮箱服务器怎么备份
守护中国网络安全的人
万樱网络技术有限公司电话
中油财务软件连不上数据库
列举无线通讯网络技术
成都手机app软件开发公司
光明区网络安全知识竞赛答案
网络技术应用大题
怎样设计黄金需求数据库
新一代网络技术与应用
龙之谷服务器推荐
在京东驻场软件开发累吗
网络安全为人民靠人民主题宣传语
网络安全进校国板报
数据库系列之sa账户登录失败
贵州省网络安全现状分析
网络技术顾问是什么
服务器同步管理
计算机网络技术没学好
昆明服务器上门回收
用模拟器打开显示无法连接服务器
网络安全靠大家字体
网络安全宣传画无文字
英雄联盟网络安全教育
域名换服务器
网络安全保护培训心得
金额大于0收入数据库
数据库原理及应用知识点图