Go中解析配置文件demo

package main import ( "fmt" "io/ioutil" "reflect" "strconv" "strings" ) // Config 日志文件结构体 type Config struct { Level string `conf:"level"` Filepath string `conf:"filepath"` Fil...

Go语言中反射(reflect)

package main import ( "fmt" "reflect" ) //go语言中变量分为两部分 // 类型信息:预先定义好元信息 // 值信息:程序运行过程中可动态变化 //reflect包 //reflect.TypeOf 获取任意值的类型对象(reflect.T...

Go语言中Channel

package main //通道 //通过通道共享内存(先入先出) //channel 是一种类型 是引用类型 空值nil //语法 //var 变量 chan 元素类型 //var ch1 chan int //var ch2 chan bool //需要通过make初始化 //make(cha...

Go语言中并发

package main import ( "fmt" "runtime" "sync" ) //goroutine 类似于线程 属于用户态的线程 //goroutine 由go语言运行时(runtime)调度完成 而线程由操作系统调度完成 //需要并发执行任务时 只需将这个...

Go语言中日志库demo

// logger.go package logger import "strings" //日志库 //Loglevelmap 定义日志级别map var Loglevelmap = map[string]int{ "debug": 0, "info": 1, "warn": 2, "error": 3, "fatal": 4, } //Logge...

Go语言中指针

package main import "fmt" // 指针 // 区别于c/c++ Go语言指针不能进行偏移和运算 是安全指针 // 指针地址 // 指针类似 // 指针取值 // & 取地址 * 根据地址取值 // 指针传值例子 func mod1(x int) { ...

Go语言标准库file

package main import ( "fmt" "io/ioutil" "os" ) //文件操作 func main() { //os.Open() 函数打开文件 返回*File和err file, err := os.Open("./config.ini") if err != nil { fmt.Println("文件打开...

Go语言中interface接口

package main import "fmt" //接口是一种类型 一种抽象的类型 //面向接口编程 //语法 //type 接口类型名 interface { // 方法名1(参数列表1) 返回值列表1 // 方法名1(参数列表1) 返回值列表1 //} //接口类型...

Go语言标准库time

package main import ( "fmt" "time" ) //time.Unix() 将时间戳转换为时间格式 func timestamp2Time(timestamp int64) { timeObj := time.Unix(timestamp, 0) //将时间戳转换为时间格式 fmt.Printf("当前...