我是靠谱客的博主 谨慎煎蛋,这篇文章主要介绍Go获取两个时间点时间差的具体实现,现在分享给大家,希望可以做个参考。

获取当前时间及其秒、毫秒、纳秒数

复制代码
1
2
3
4
5
6
now := time.Now() //获取当前时间 ==>2019-08-21 11:30:51.2470317 +0800 CST m=+0.004501101 fmt.Printf("时间戳(秒):%v;n", time.Now().Unix()) //10位 fmt.Printf("时间戳(纳秒):%v;n",time.Now().UnixNano()) //19位 fmt.Printf("时间戳(毫秒):%v;n",time.Now().UnixNano() / 1e6) //或者秒*1000也可 fmt.Printf("时间戳(纳秒-->秒):%v;n",time.Now().UnixNano() / 1e9)

两个时间作差,第一个时间是t1,第二个时间是t2,那么时间差是t2.Sub(t1)

具体显示时间可以通过Format(time.ANSIC)打印时间格式,以及In接口+Location设置时区

例如:

复制代码
1
2
3
TimeLocation, err := time.LoadLocation("Asia/Shanghai") //err处理 t1.Now().In(TimeLocation).Format(time.ANSIC)

获取两个时间点时间差代码

复制代码
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
package main import (     "fmt"     "time" ) func main() {     temp := 0     t1 := time.Now()     for i := 0; i < 100000; i++ {         for j := 0; j < 10000; j++ {             temp++         }     }     fmt.Println(temp)     t2 := time.Now()     fmt.Println(t2.Sub(t1)) }

获取指定时间前的时间

复制代码
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
// 获取50秒前的时间,方式1 st,_ := time.ParseDuration("-50s") fmt.Println("50秒前的时间:",time.Now().Add(st)) // 获取1分钟前的时间,n秒前则是time.Second * -n,方式2 t := time.Now().Add(time.Minute * -1) fmt.Println("一分钟前的时间:",t) //获取1小时前的时间 sth,_ := time.ParseDuration("-1h") fmt.Println("1小时前的时间:",time.Now().Add(sth)) // 获取2天前的时间 oldTime := time.Now().AddDate(0, 0, -2) //获取两个月前的时间 oldTime := time.Now().AddDate(0, -2, 0)

 获取指定时间后的时间

复制代码
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
// 获取50秒后的时间,方式1 st,_ := time.ParseDuration("50s") fmt.Println("50秒之后的时间:",time.Now().Add(st)) // 获取1分钟后的时间,n秒前则是time.Second * n,方式2 t := time.Now().Add(time.Minute * 1) fmt.Println("一分钟后的时间:",t) //获取1小时后的时间 sth,_ := time.ParseDuration("1h") fmt.Println("1小时之后的时间:",time.Now().Add(sth)) // 获取当前时间2天后的时间 newTime := time.Now().AddDate(0, 0, 2) //newTime 的结果为时间time类型 //获取当前时间2月后的时间 newTime := time.Now().AddDate(0, 2, 0)

到此这篇关于Go获取两个时间点时间差的具体实现的文章就介绍到这了,更多相关Go获取时间差内容请搜索靠谱客以前的文章或继续浏览下面的相关文章希望大家以后多多支持靠谱客!

最后

以上就是谨慎煎蛋最近收集整理的关于Go获取两个时间点时间差的具体实现的全部内容,更多相关Go获取两个时间点时间差内容请搜索靠谱客的其他文章。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(94)

评论列表共有 0 条评论

立即
投稿
返回
顶部