Go组件学习:如何读取ini配置文件
2024-10-08 21:10:40
代码示例全部保存在,欢迎star:https://github.com/EnochZg/golang-examples
安装组件
go get gopkg.in/ini.v1
使用
先创建ini后缀的配置文件,本文以config.ini为例
username = 平也
在main函数中加入以下代码读取username配置
package main
import (
"fmt"
"gopkg.in/ini.v1"
"os"
)
func main() {
cfg, err := ini.Load("config.ini")
if err != nil {
fmt.Println("文件读取错误", err)
os.Exit(1)
}
fmt.Println(cfg.Section("").Key("username"))
}
运行后即可读取到username的值,上文中的Section有什么作用呢?我们在配置文件中加入以下配置
[mysql]
username = root
这个时候配置文件中就存在两个一样的username,那么读取的时候以哪个为准呢?这就需要通过Section来区分了,在main函数中加入以下代码,通过在Section中传入参数来读取mysql中的配置
fmt.Println(cfg.Section("mysql").Key("username"))
运行可以发现,现在读取到的内容为root
进阶
限制值
我们还可以对值进行限制,假如我们只允许值为张三或者李四,如果用户设置的名称不在这两个里面,那么就默认为张三,代码可以如下编写
fmt.Println(cfg.Section("mysql").Key("username").In("张三", []string{"张三", "李四"}))
运行后输出结果为“张三”
修改配置文件
在main行数中加入以下代码可以反设置回配置文件中
cfg.Section("mysql").Key("username").SetValue("李四")
err = cfg.SaveTo("config.ini")
if err != nil {
fmt.Println("文件保存错误", err)
}
以上代码意为将mysql中的username改为李四,我们去查看一下config.ini,成功被改为李四
[mysql]
username = 李四
最新文章
- css(二)
- 【YEOMAN】执行yo命令,报EACCES: permission denied, mkdir '/root/.config/configstore'
- HttpClient 与 HtmlParser 简介 转载
- iOS阶段学习第二天笔记(数据类型与进制)
- tostring格式化输出
- 记录创建企业Wiki的几个开源项目
- jquery 判断当前上传文件大小限制上传格式 搭配thinkphp实现上传即预览(模拟异步上传)
- 使用微软 URL Rewrite Module 开启IIS伪静态
- VB.NET调用SQL Sever存储过程
- C互质个数
- 前端的UI设计与交互之文案篇
- ASP.NET Core之中间件
- React.js小书总结
- ASP.net MVC5 Code First填充测试数据到数据库
- Python不可变对象
- psd页面切割成html技巧总结
- Tensorflow学习笔记02-Session,Variable,placeholder
- python opencv3 给图片加中文
- asp.net --- reponse对象写图片
- Android 之类库常用包