go語言如何設置時區

在Go語言上,go語言的time.Now()返回的是當地時區時間,直接用:
time.Now().Format(“2006-01-02 15:04:05”)
輸出的是當地時區時間。
但是在docker裏有時候是讀不到時區信息的,查了好久,發現要這麼寫,用In()函數改變時區:

var cstSh, _ = time.LoadLocation("Asia/Shanghai") //上海
fmt.Println("SH : ", time.Now().In(cstSh).Format("2006-01-02 15:04:05"))

如果提示Asia/Shanghai找不到,可以這麼寫:

var cstZone = time.FixedZone("CST", 8*3600)
			newtime = oldtime.In(cstZone).Format("2006-01-02 15:04:05")

oldtime的類型是time.Time。

一般的習慣是在前面設置好,或者在後面設置,而這裏是在中間插入設置,而且還叫In,感覺有點彆扭

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章