Go学习笔记:time包使用

前端之家收集整理的这篇文章主要介绍了Go学习笔记:time包使用前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
摘要: 和python一样,golang时间处理还是比较方便的,以下按照之前python的时间处理展开

golang时间处理
相关包 "time"

  • 时间戳
    当前时间戳

    fmt.Println(time.Now().Unix())
    #1389058332
  • str格式化时间
    当前格式化时间

    fmt.Println(time.Now().Format("2006-01-0215:04:05"))//这是个奇葩,必须是这个时间点,据说是go诞生之日,记忆方法:6-1-2-3-4-5
    #2014-01-0709:42:20
  • 时间戳转str格式化时间

    str_time:=time.Unix(1389058332,0).Format("2006-01-0215:04:05")
    fmt.Println(str_time)
    #2014-01-0709:32:12
  • str格式化时间转时间戳
    这个比较麻烦

    the_time:=time.Date(2014,1,7,5,50,4,time.Local)
    unix_time:=the_time.Unix()
    fmt.Println(unix_time)
    #389045004

    还有一种方法,使用time.Parse

    the_time,err:=time.Parse("2006-01-0215:04:05","2014-01-0809:04:41")
    iferr==nil{
    unix_time:=the_time.Unix()
    	fmt.Println(unix_time)		
    }
    #1389171881
转自:https://my.oschina.net/1123581321/blog/190942


package main

import (
    "fmt"
    "time"
)

func main() {
    t,_ := time.Parse("2006-01-02 15:04:05","2016-04-20 16:23:00")
    fmt.Println(t.Unix())
    y,m,d := time.Unix(1466344320,0).Date()
    fmt.Println(y,d)

    //format后面的字符串必须是2006-01-02 15:04:05,据说go是这个时间诞生的
    fmt.Println(time.Now().Format("2006-01-02 15:04:05"))
    fmt.Println(time.Now().Format("2006-01-02"))
    fmt.Println(time.Now().Format("20060102"))
                                                                                                                            
    select {
    case <-time.After(5 * time.Second):
        fmt.Println("After 5 second")
    }   
    c := time.Tick(10 * time.Second)
    for now := range c { 
        fmt.Println(now)
    }   
}
原文链接:https://www.f2er.com/go/189336.html

猜你在找的Go相关文章