zoukankan      html  css  js  c++  java
  • Golang 时间转换

    完整代码

    https://github.com/smallinsect/MyGo/tree/master/mytimer

    //时间转换的模板,golang里面只能是 "2006-01-02 15:04:05" (go的诞生时间)
    var TIME_LAYOUT string = "2006-01-02 15:04:05"
    var (
        testTime string = "2020-07-08 10:00:00"
    )
    Unix()时间戳,和时区无关。

    1、字符串转时间,默认UTC

        fmt.Println("==================================")
        start, _ := time.Parse(TIME_LAYOUT, testTime)
        fmt.Println(start)
        fmt.Println(start.Unix())
        fmt.Println(start.UTC())
        fmt.Println(start.UTC().Unix())

     2、字符串转时间,添加时区

        fmt.Println("==================================")
        startT, _ := time.ParseInLocation(TIME_LAYOUT, "2020-03-25 18:00:00", time.Local)
        fmt.Println(startT)
        fmt.Println(startT.Unix())
        fmt.Println(startT.UTC())
        fmt.Println(startT.UTC().Unix())

     3、Now()获取当前系统时区当前时间

        fmt.Println("==================================")
        now := time.Now()
        fmt.Println(now)
        fmt.Println(now.Unix())
        fmt.Println(now.UTC())
        fmt.Println(now.UTC().Unix())

     4、设置现在时间

        fmt.Println("==================================")
        var cstSh, _ = time.LoadLocation("Asia/Shanghai") //上海
        fmt.Println(now.In(cstSh))
        var utcSh, _ = time.LoadLocation("UTC")
        fmt.Println(now.In(utcSh))

     5、时区

        fmt.Println("==================================")
        fmt.Println(time.Now().Zone())
        fmt.Println(time.LoadLocation("Local"))                                //获取时区
        timeStr := time.Now().Format("2006-01-02 15:04:05")                    //转化所需模板
        loc, _ := time.LoadLocation("Local")                                   //获取时区
        fmt.Println(time.ParseInLocation("2006-01-02 15:04:05", timeStr, loc)) //使用模板在对应时区转化为time.time类型
        fmt.Println(time.Local)

     6、Unix时间转时间

        fmt.Println("==================================")
        fmt.Println(now)
        fmt.Println(now.Unix())
        fmt.Println(now.UTC())
        fmt.Println(time.Unix(now.Unix(), 0))           // Unix()转时间,默认当地时间
        fmt.Println(time.Unix(now.Unix(), 0).In(utcSh)) //Unix转时间,设置时区

     7、时间转字符串

        // 时间转字符串
        fmt.Println("==================================")
        lnow := now.Format(TIME_LAYOUT)
        fmt.Println(lnow)
        lnow = now.In(utcSh).Format(TIME_LAYOUT)
        fmt.Println(lnow)

  • 相关阅读:
    vim删除操作
    kubectl命令自动补全
    kubelet资源限制
    一道c语言运算符优先级问题
    c语言自加自减三道题
    C语言操作符优先级
    [word]2010中插入公式自动编号并且公式不自动缩小/变小
    [matlab]改变矩阵的大小并保存到txt文件
    dxut.h(29): fatal error C1083: Cannot open include file: 'dxsdkver.h': No such file or directory
    [vim]的关键字补全
  • 原文地址:https://www.cnblogs.com/xuqiulin/p/13267512.html
Copyright © 2011-2022 走看看