1.获取当前时间戳

1
fmt.Println(time.Now().Unix()) //1561713322

2.格式化时间

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
fmt.Println("时间:",time.Now().Format("20060102150405"))
fmt.Println("时间1:",time.Now().Format("2006/01/02 15:04:05"))
fmt.Println("时间2:",time.Now().Format("2006-01-02 15:04:05"))
fmt.Println("时间3:", time.Now().Format("2006-01-02"))
fmt.Println("时间4:", time.Now().Format("15:04:05"))

/**
输出:
时间: 20190628172052
时间1: 2019/06/28 17:20:52
时间2: 2019-06-28 17:20:52
时间3: 2019-06-28
时间4: 17:20:52
**/

为什么是"2006-01-02 15:04:05",这是个奇葩,必须是这个时间点, 据说是go诞生之日, 记忆方法:6-1-2-3-4-5

3.str格式化时间转时间戳

3.1 time.Date

1
2
3
theTime := time.Date(2014, 1, 7, 5, 50, 4, 0, time.Local)
unixTime := theTime.Unix()
fmt.Println("当前时间戳: ",unixTime) //1561627632

3.2 time.Parse

1
2
3
4
5
6
theTime1,err:= time.Parse("2006-01-02 15:04:05","2019-06-27 17:27:12")
if err != nil {
	fmt.Println(err.Error())
}
unixTime1 := theTime1.Unix()
fmt.Println("当前时间戳2: ",unixTime1) // 1561627632