golang 指定時區和自定義時區


golang 指定時區

loc,_:=time.LoadLocation("Asia/Shanghai")
t:=time.Now()
t = t.In(loc)

LoadLocation 有個問題,它依賴於 IANA Time Zone Database (簡稱 tzdata 吧) 這個數據庫,一般linux系統都帶了,但是windows系統就沒帶。

沒有 tzdata 就會從$GOROOT/中找。對於沒有安裝go環境的windows系統來說,就沒辦法通過 LoadLocation 設置時區。

 

golang 自定義時區

    a1 := time.Now()
    fmt.Println("a1:", a1)
    a2 := a1.Format("2006-01-02 15:04:05")
    fmt.Println("a2:", a2)
    a3, _ := time.Parse("2006-01-02 15:04:05", a2)
    fmt.Println("a3:", a3)
    a4 := time.Now()
    fmt.Println("a4:", a4)
    a5 := a4.UTC()
    fmt.Println("a5:", a5)

    secondsEastOfUTC := int((8 * time.Hour).Seconds())
  //上面是計算8小時一共多少秒,下面是定義a6這個變量為自定義的時間格式,下面用的時間格式名叫"CST" ,這個格式我們定義為utc時間+8小時 a6 :
= time.FixedZone("CST", secondsEastOfUTC) a7 := a5.In(a6) fmt.Println(a7) fmt.Println("a5.Sub(a3):", a5.Sub(a3)) fmt.Println("a4.Sub(a1):", a4.Sub(a1))

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM