golang中时间相关操作,主要是用时间包的函数,时间中最主要又包含了time.Time这个对象。
1,获取当前时间
,,,,(1)currentTime:=time.Now (),,,,//获取当前时间、类型是走的时间类型时间
,(2)
,,,t1:=time.Now()岁(),,,,,,,//年
,,t2:=time.Now () .Month (),,,,,,//月
,,t3:=time.Now()要擦防晒霜(),,,,,,,,//日
,,t4:=time.Now () .Hour (),,,,,,,//小时
,,t5:=time.Now () .Minute (),,,,,//分钟
,,t6:=time.Now ()。(),,,,,//秒
,,.Nanosecond t7:=time.Now () (),//纳秒
,
,,,,currentTimeData:=time.Date (t1、t2、t3、t4、t5 t6, t7, time.Local)//获取当前时间,返回当前时间Time ,,,
,
,,,,,fmt.Println (currentTime),,,,,,//打印结果:2017-04-11 12:52:52.794351777 + 0800 CST
,,,,fmt.Println (t1、t2、t3、t4, t5, t6),,,,//打印结果:2017年4月11日12 52 52
,,,,fmt.Println (currentTimeData),,,//打印结果:2017-04-11 12:52:52.794411287 + 0800 CST
:=time.Now () .Unix()//获取时间戳
.UTC time.Now()()//转换为UTC时间
时间。睡眠(10 * time.Millisecond)//时间的睡眠
示例分享:
获取当前时间
func getNow () {
引用>
,,//获取当前时间,返回时间。时间对象
,,fmt.Println (time.Now ())
,,//输出:2016-07-27 08:57:46.53277327 + 0800 CST
,,//其中中科可视为美国,澳大利亚,古巴或中国的标准时间
,,//+ 0800表示比UTC时间快8个小时
,
,,//获取当前时间戳
,,.Unix fmt.Println (time.Now () ())
,,//精确到纳秒,通过纳秒就可以计算出毫秒和微妙
,,.UnixNano fmt.Println (time.Now () ())
,,//输出:
,,//,,,1469581066
,,//,,,1469581438172080471
}
格式化时间显示
func formatUnixTime () {
引用>
,,//获取当前时间,进行格式化
,,fmt.Println (time.Now ()。格式(“2006-01-02 15:04:05”))
,,//输出:2016-07-27 08:57:46
,
,,//指定的时间进行格式化
,,fmt.Println(时间。Unix (1469579899,0) .Format (“2006-01-02 15:04:05”))
,,//输出:2016-07-27 08:38:19
}
获取指定时间戳的年份
func getYear () {
引用>
,,//获取指定时间戳的年月日,小时分钟秒
,,t:=nix (1469579899,0)
,,fmt。Printf (" % d - % d % d % d: % d: % d \ n”, t.Year (), t.Month (), t.Day (), t.Hour (), t.Minute (), t.Second ())
,,//输出:2016-7-27 8:38:19
}
时间字符串转换时间戳
//将2016-07-27 08:46:15这样的时间字符串转换时间戳
引用>
func strToUnix () {
,,//先用time.Parse对时间字符串进行分析,如果正确会得到一个时间。时间对象
,,//后面就可以用时间。时间对象的函数Unix进行获取
,,t2,犯错:=时间。解析(“2006-01-02 15:04:05”、“2016-07-27 08:46:15”)
,,如果犯错!=nil {
,,,,,,log.Fatalln (err)
,,}
,,fmt.Println (t2)
,,fmt.Println (t2.Unix ())
,,//输出:
,,//,,,,2016-07-27 08:46:15 + 0000 UTC
,,//,,,,1469609175
}
根据时间戳获取当日开始的时间戳
//根据时间戳获取当日开始的时间戳
引用>
//这个在统计功能中会常常用到
//方法就是通过时间戳取到2016-01-01就是这样的时间格式
//然后再转成时间戳就好了
//获取月开始时间和年开始时间类似
func getDayStartUnix () {
,,t:=nix (1469581066,0) .Format (“2006-01-02”)
,,sts,犯错:==馕?“2006-01-02”,t)
,,如果犯错!=nil {
,,,,,,log.Fatalln (err)
,,}
,,fmt.Println (sts.Unix ())
,,//输出:1469577600
}
休眠
//休眠
func睡眠(){
,,//休眠1秒
,,//time.Millisecond ,,表示1毫秒
,,//time.Microsecond ,,表1示微妙
,,//time.Nanosecond ,,表示1纳秒
,,时间。睡眠(1 * time.Second)
,,//休眠100毫秒
,,时间。睡眠(100 * time.Millisecond)
,Golang获取当前时间代码