培训首页  >  web前端新闻  >  兄弟连分享Go语言接口读取ini配置文件

兄弟连分享Go语言接口读取ini配置文件

[2018-08-29 15:34:17] 浏览量:217 来源:

北京兄弟连IT

  2018年第一季度,区块链相关人才的招聘需求已达到2017年同期的9.7倍,发布区块链相关岗位的公司数量同比增长4.6倍。

 

  兄弟连教育Go全栈与区块链培训课程是由清华、微软和谷歌名师历时半年时间研发出的独一无二的体系化课程。

golang读取ini配置文件

 

一、安装config配置解释包:

 

go get github.com/larspensjo/config

二、载入其包及代码设置

 

package main

 

import (

"flag"

"fmt"

"github.com/larspensjo/config"

"log"

"runtime"

)

 

var (

configFile = flag.String("configfile", "config.ini", "General configuration file")

)

 

//topic list

var TOPIC = make(map[string]string)

 

func main() {

runtime.GOMAXPROCS(runtime.NumCPU())

flag.Parse()

 

//set config file std

cfg, err := config.ReadDefault(*configFile)

if err != nil {

log.Fatalf("Fail to find", *configFile, err)

}

//set config file std End

 

//Initialized topic from the configuration

if cfg.HasSection("topicArr") {

section, err := cfg.SectionOptions("topicArr")

if err == nil {

for _, v := range section {

options, err := cfg.String("topicArr", v)

if err == nil {

TOPIC[v] = options

}

}

}

}

//Initialized topic from the configuration END

 

fmt.Println(TOPIC)

fmt.Println(TOPIC["debug"])

}

三、配置文件

 

文件名:config.ini

 

[topicArr]

addr = 192.168.1.100

debug = true

login = LoginRequest

 

[other]

t1 = 0000337

t2 = admin

四、简介:

 

4.1首先通过config.ReadDefault(*configFile)打开配置文件

 

4.2 然后判断配置文件中一级标签名是否存在if cfg.HasSection("topicArr") {}

 

4.2读取一级标签中的所有子标签cfg.SectionOptions()

 

4.3循环一下子标签,将子标签中的值记录在一个map(TOPIC为全局变量),以备后面使用

 

for _, v := range section {

    options, err := cfg.String("topicArr", v)

        if err == nil {

            TOPIC[v] = options

        }

}

文中图片素材来源网络,如有侵权请联系删除
  • 软件开发
  • 软件测试
  • 数据库
  • Web前端
  • 大数据
  • 人工智能
  • 零基础
  • 有HTML基础
  • 有PHP基础
  • 有C语言基础
  • 有JAVA基础
  • 其他计算机语言基础
  • 周末班
  • 全日制白班
  • 随到随学

网上报名

热门信息