Go的時間解析時區設置

Go語言在使用windows

time.Parse("2006-01-01 15:04:05", time.now)函數

進行時間解析的時候,會發現解析出來的時間是UTC時間,看源碼也能夠發現使用的UTC()。code

而咱們使用的是北京時間,比UTC時間快8個小時,固然咱們能夠直接在解析後加8個小時,有點麻煩。orm

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會加載失敗。io

var cstZone = time.FixedZone("CST", 8*3600)       // 東八
fmt.Println("SH : ", time.Now().In(cstZone).Format("2006-01-02 15:04:05"))

最好的辦法是用time.FixedZoneim

相關文章
相關標籤/搜索