Golang当中如何获取两个时间的差值

我们经常需要比较两个时间的差值,在go语言当中,如果想要比较两个时间点的差值,可以采用下面的方式获取。

我们以当前时间为例,首先来获取当前时间。

now := time.now() 

然后我们在来设置一下时区,避免因为时区的原因导致计算错误。

loc,err := time.LoadLocation("Asia/Shanghai")
if err != nil {
    fmt.Println("时区设置错误",err)
    return
}

LoadLocation() 方法会返回一个Location的指针,可以在后面用的到。

下一步是按照指定格式设置时间。

timeObj,err := time.ParseInLocation("2006-01-02 15:04:05", "2020-03-08 19:36:00", loc)
if err != nil {
    fmt.Println("解析错误:",err)
    return
}

第三个参数就是在上一步获取的Location指针对象。

最后再通过Sub()方法来计算两个时间点相差时间。

// 计算两个时间的间隔
ret := timeObj.Sub(now)
fmt.Println(ret)
发布了10 篇原创文章 · 获赞 3 · 访问量 1243

猜你喜欢

转载自blog.csdn.net/weixin_44568935/article/details/104811404