返回顶部
首页 > 资讯 > 后端开发 > GO >GO语言ini配置文件的读取的操作
  • 519
分享到

GO语言ini配置文件的读取的操作

iniGO 2022-06-07 20:06:15 519人浏览 薄情痞子
摘要

iniconf 博主前两天在写一个小的Go语言项目,想找一个读取ini格式配置和的三方库,在网上找了一圈感觉都不是很好用, 使用起来非常的奇怪,于是自己写了一版,还有两个接口没

iniconf

博主前两天在写一个小的Go语言项目,想找一个读取ini格式配置和的三方库,在网上找了一圈感觉都不是很好用, 使用起来非常的奇怪,于是自己写了一版,还有两个接口没有实现,在项目中修改或删除配置项后更新到文件中,等待后续有时间了再写,希望用的朋友感觉不错点个赞

GitHub 地址

描述

使用iniconf更简单的读取go的ini配置文件以及根据特定格式的各种配置文件。

安装方法

go get github.com/clod-moon/goconf
使用方法

ini配置文件格式样列


[database]
username = root
passWord = password
hostname = localhost
[admin]
username = root
password = password
[nihao]
username = root
password = password

初始化


conf := goini.InitConfig("./conf/conf.ini")
 //iniconf.InitConfig(filepath) 其中filepath是你ini 配置文件的所在位置

获取单个配置信息


username := conf.GetValue("database", "username") 
//database是你的[section],username是你要获取值的key名称
fmt.Println(username) //root

删除一个配置信息


conf.DeleteValue("database", "username") 
//username 是你删除的key
username = conf.GetValue("database", "username")
if len(username) == 0 {
 fmt.Println("username is not exists") 
 //this stdout username is not exists
}

添加一个配置信息


conf.SetValue("database", "username", "chun")
username = conf.GetValue("database", "username")
fmt.Println(username) 
//chun 添加配置信息如果存在[section]则添加或者修改对应的值,如果不存在则添加section

获取所有配置信息


conf.GetAllSetion() //返回map[string]map[string]string的格式 即setion=>key->value
iniconf About

使用iniconf更简单的读取go的ini配置文件以及根据特定格式的各种配置文件。

example

func main() {
 conf := iniconf.InitConfig("./config.ini")
 for key,value :=range conf.Conflist {
  fmt.Println(key)
  for k,v := range value{
   fmt.Println(k,":",v)
  }
 }
 fmt.Println(conf.GetValue("esinfo","addr"))
 conf.SetValue("esinfo","addr","127.100.100.100")
 fmt.Println(conf.GetValue("esinfo","addr"))
}

output


esinfo
addr : 127.0.0.1
port : 9200
index : case
type : case
127.0.0.1
127.100.100.100
Process finished with exit code 0

补充:GoLang 使用goconfig读取配置文件(.ini、.json、.yaml)

一、goconfig读取.ini类型配置文件 1、配置文件(config.ini)如下:

[RabbitMQ]
MQUrl        = amqp://trkj:trkj@192.168.5.62:5672/test
Exchange     = EX.WALLDATA
ExchangeType = fanout
RoutingKey   = RK.WALLDATA
[Base]
messageFrequency = 5
2、解析配置文件:

package main 
import (
 "fmt"
 "github.com/hyahm/goconfig"
)
type RabbitMQ struct {
 MQUrl string
 Exchange string
 ExchangeType string
 RoutingKey string
}
type BaseConfig struct {
 MsgFrequency int64 // 消息发送频率
 RabbitMQ // MQ信息
}
func ReadBaseConfig(bconfig *BaseConfig, confFile string) {
 goconfig.InitConf(confFile, goconfig.INI)
 bconfig.MsgFrequency = goconfig.ReadInt64("Base.messageFrequency", 3)
 bconfig.RabbitMQ.MQUrl = goconfig.ReadString("RabbitMQ.MQUrl", "")
 bconfig.RabbitMQ.Exchange = goconfig.ReadString("RabbitMQ.Exchange", "")
 bconfig.RabbitMQ.ExchangeType = goconfig.ReadString("RabbitMQ.ExchangeType", "")
 bconfig.RabbitMQ.RoutingKey = goconfig.ReadString("RabbitMQ.RoutingKey", "")
}
func main() {
 baseConfig := BaseConfig{}
 ReadBaseConfig(&baseConfig, "./Config.ini")
 fmt.Printf("mq.MQUrl = %s \t mq.Exchange = %s \t mq.ExchangeType = %s \t mq.RoutingKey = %s\n", baseConfig.RabbitMQ.MQUrl, baseConfig.RabbitMQ.Exchange, baseConfig.RabbitMQ.ExchangeType, baseConfig.RabbitMQ.RoutingKey)
 fmt.Printf("msgFrequency = %d\n", baseConfig.MsgFrequency)
}

以上为个人经验,希望能给大家一个参考,也希望大家多多支持编程网。如有错误或未考虑完全的地方,望不吝赐教。


您可能感兴趣的文档:

--结束END--

本文标题: GO语言ini配置文件的读取的操作

本文链接: https://www.lsjlt.com/news/30634.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

猜你喜欢
  • GO语言ini配置文件的读取的操作
    iniconf 博主前两天在写一个小的go语言项目,想找一个读取ini格式配置和的三方库,在网上找了一圈感觉都不是很好用, 使用起来非常的奇怪,于是自己写了一版,还有两个接口没...
    99+
    2022-06-07
    ini GO
  • GO语言ini配置文件的读取操作示例分析
    小编给大家分享一下GO语言ini配置文件的读取操作示例分析,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!go适合做什么go是golang的简称,而golang可以...
    99+
    2023-06-15
  • Python3 读取 ini 配置文件(
    【背景】  Windows 的记事本会给 UTF-8 文件添加 BOM 头,很烦,搞个通用的读取配置文件的代码。可能报这种错误:configparser.MissingSectionHeaderError: File contains no...
    99+
    2023-01-31
    配置文件 ini
  • C语言读取写入ini配置文件的方法实现
    目录一、了解什么是INI文件?二、INI文件的格式三、解析上述文件四、测试如下一、了解什么是INI文件? ini 文件是Initialization File的缩写,即初始化文件,这...
    99+
    2024-04-02
  • Go语言如何读取YAML配置文件
    今天小编给大家分享一下Go语言如何读取YAML配置文件的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一下吧。yaml.v3 包yam...
    99+
    2023-07-04
  • python如何读取ini配置文件
    Python提供了一个标准库`configparser`用于读取和修改INI文件。首先,需要导入`configparser`模块:`...
    99+
    2023-10-08
    python
  • 通过python读取ini配置文件
    ini是啥你可以理解为就是一个配置文件的统称吧。比如test.conf,这样的你可以理解为他就是ini文件,里面一般存放一些配置信息。比如数据库的基本信息,一会我们进行讲解!那么ta的好处是啥呢?就是把一些配置信息提出去来进行单独管理,如果...
    99+
    2023-01-31
    配置文件 python ini
  • Go语言zip文件的读写操作
    目录创建 zip 归档文件读取 zip 归档文件Go语言的标准库提供了对几种压缩格式的支持,其中包括 gzip,因此 Go 程序可以无缝地读写 .gz 扩展名的 gzip 压缩文件或...
    99+
    2023-05-14
    Go语言zip读写 go读写ZIP文件
  • 一文带你掌握Go语言中的文件读取操作
    目录os 包 和 bufio 包os.Open 与 os.OpenFile 以及 File.Read读取文件操作bufio.NewReader 和 Reader.ReadString...
    99+
    2022-12-08
    Go语言文件读取操作 Go语言文件读取 Go 文件读取
  • Go语言读取txt文档的操作方法
    读取文件是所有编程语言中最常见的操作之一。本教程我们将了解如何使用 Go 读取txt文档。 文档内容每行是一个文件名信息,含有空格区分不同项;ioutil.ReadFile返回的是[...
    99+
    2024-04-02
  • Go语言中JSON文件的读写操作
    目录写 JSON 文件读 JSON 文件JSON(JavaScript Object Notation)是一种轻量级的数据交换格式,易于阅读和编写,同时也易于机器解析和生成。它基于 ...
    99+
    2023-05-14
    Go语言JSON读写 Go语言读写JSON
  • Go语言中XML文件的读写操作
    目录写 XML 文件读 XML 文件XML(extensible Markup Language)格式被广泛用作一种数据交换格式,并且自成一种文件格式。与上一节介绍的 JSON 相比...
    99+
    2023-05-14
    Go语言XML文件读写 Go语言XML读写
  • 如何实现Python中ini配置文件读写操作
    这篇文章将为大家详细讲解有关如何实现Python中ini配置文件读写操作,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。导入模块import configparser # py...
    99+
    2023-06-29
  • Python读取配置文件的实战操作
    目录一、 yaml1、 准备2、 操作数据2.1 读取数据二、 ini1、准备2、 操作数据2.1 读取数据2.2. 写数据三、 xml1、 准备2、 操作数据2.1 读取数据2.2...
    99+
    2023-05-14
    python读取配置文件 python如何读取配置文件 python 配置文件读取
  • Go语言二进制文件的读写操作
    目录写Go语言二进制文件读Go语言二进制文件Go语言的二进制(gob)格式是一个自描述的二进制序列。从其内部表示来看,Go语言的二进制格式由一个 0 块或者更多块的序列组成,其中的每...
    99+
    2023-05-14
    Go语言二进制文件读写 golang 读写二进制文件
  • golang读取各种配置文件(ini、json、yaml)
    目录viper读取ini文件viper读取json文件viper读取yaml文件日常项目中,读取各种配置文件是避免不了的,这里介绍一个能读取多种配置文件的库,viper viper读...
    99+
    2024-04-02
  • golang怎么读取ini、json、yaml配置文件
    本文小编为大家详细介绍“golang怎么读取ini、json、yaml配置文件”,内容详细,步骤清晰,细节处理妥当,希望这篇“golang怎么读取ini、json、yaml配置文件”文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一起来...
    99+
    2023-06-30
  • python读取/写入配置文件ini方法
    在写测试脚本时,经常有一些需要变动的数据,可以单独放在ini文件里,然后读取传递给 相应的函数,这样程序操作更灵活。具体的方法介绍如下: 文件结构: Cofig.ini内容:[test1]ip = 10.10.10.10 [test2]po...
    99+
    2023-01-31
    配置文件 方法 python
  • Go语言读取YAML配置文件的两种方式分享
    目录前言yaml.v3 包读取 yaml 文件viper 包读取 yaml 文件小结前言 在日常开发中,YAML 格式的文件基本上被默认为是配置文件,其内容因为缩进带来的层级感看起来...
    99+
    2022-12-19
    Go读取YAML 配置文件 Go读取YAML Go YAML
  • Shell脚本读取ini配置文件的实现方法
    本篇内容介绍了“Shell脚本读取ini配置文件的实现方法”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!一、简单版参考stackoverfl...
    99+
    2023-06-09
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作