美文网首页
Go time时区

Go time时区

作者: 晚歌歌 | 来源:发表于2022-03-01 18:31 被阅读0次
    package main
    
    import (
        "fmt"
        "time"
    )
    
    const TimeLayout = "2006-01-02 15:04:05"
    
    func main() {
        t := "2022-01-28 18:22:18"
        t1, _ := time.ParseInLocation(TimeLayout, t, time.Local)
        t2, _ := time.Parse(TimeLayout, t)
        fmt.Println(t1.Format(TimeLayout))
        fmt.Println(t1.Unix())
        fmt.Println(t2.Format(TimeLayout))
        fmt.Println(t2.Unix())
    }
    
    
    image.png
    2022-01-28 18:22:18
    1643365338
    2022-01-28 18:22:18
    1643394138
    

    如上可知:
    1、同样的时间字符串,time.Parse转换的时间为UTC时区,而time.ParseInLocation(中国)转换的时间为UTC+8时区,因此两者的Unix相差八小时。
    转换时需要注意一定要带上时区进行转换,否则在中国转换完的Unix在使用时会少了八小时
    2、忽略时区时,两者Format后的格式一致
    3、另外Go的时间格式化也比较奇怪:const TimeLayout = "2006-01-02 15:04:05"

    相关文章

      网友评论

          本文标题:Go time时区

          本文链接:https://www.haomeiwen.com/subject/lrcjrrtx.html