1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23
| var loc = time.FixedZone("CST", 8*3600) if runtime.GOOS !="windows" { loc, _ = time.LoadLocation("Asia/Shanghai") }
log.Println("2",loc,runtime.GOOS) starttmp, _ := time.ParseInLocation(timeLayout, start, loc)
时间格式化输出的时区为东八区北京时间,无需关系系统所在时区。 在Go语言上,go语言的time.Now()返回的是当地时区时间,直接用: time.Now().Format("2006-01-02 15:04:05")
输出的是当地时区时间。 go语言并没有全局设置时区这么一个东西,每次输出时间都需要调用一个In()函数改变时区: var cstSh, _ = time.LoadLocation("Asia/Shanghai") fmt.Println("SH : ", time.Now().In(cstSh).Format("2006-01-02 15:04:05"))
在windows系统上,没有安装go语言环境的情况下,time.LoadLocation会加载失败。 var cstZone = time.FixedZone("CST", 8*3600) fmt.Println("SH : ", time.Now().In(cstZone).Format("2006-01-02 15:04:05"))
最好的办法是用time.FixedZone
|