Go获取两个时区的时间差


Posted in Golang onApril 20, 2022

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

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设置时区

例如:

TimeLocation, err := time.LoadLocation("Asia/Shanghai")
//err处理
t1.Now().In(TimeLocation).Format(time.ANSIC)

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

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))

}

获取指定时间前的时间

// 获取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)

 获取指定时间后的时间

// 获取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获取两个时间点时间差的具体实现的文章就介绍到这了!

Golang 相关文章推荐
Go语言操作数据库及其常规操作的示例代码
Apr 21 Golang
go 原生http web 服务跨域restful api的写法介绍
Apr 27 Golang
golang 实现两个结构体复制字段
Apr 28 Golang
golang 比较浮点数的大小方式
May 02 Golang
Go timer如何调度
Jun 09 Golang
基于Go语言构建RESTful API服务
Jul 25 Golang
golang内置函数len的小技巧
Jul 25 Golang
golang语言指针操作
Apr 14 Golang
Golang ort 中的sortInts 方法
Apr 24 Golang
Go web入门Go pongo2模板引擎
May 20 Golang
GO中sync包自由控制并发示例详解
Aug 05 Golang
Golang jwt身份认证
实现GO语言对数组切片去重
Apr 20 #Golang
Golang日志包的使用
Apr 20 #Golang
Golang获取List列表元素的四种方式
Apr 20 #Golang
Golang 对es的操作实例
Apr 20 #Golang
Golang 遍历二叉树
Apr 19 #Golang
Golang MatrixOne使用介绍和汇编语法
Apr 19 #Golang
You might like
如何在WIN2K下安装PHP4.04
2006/10/09 PHP
php数组分页实现方法
2016/04/30 PHP
详解yii2使用多个数据库的案例
2017/06/16 PHP
插件:检测javascript的内存泄漏
2007/03/04 Javascript
js wmp操作代码小结(音乐连播功能)
2008/11/08 Javascript
javascript Base类 包含基本的方法
2009/07/22 Javascript
jquery对dom的操作常用方法整理
2013/06/25 Javascript
Bootstrap导航栏各元素操作方法(表单、按钮、文本)
2015/12/28 Javascript
js实现prototype扩展的方法(字符串,日期,数组扩展)
2016/01/14 Javascript
用POSTMAN发送JSON格式的POST请求示例
2018/09/04 Javascript
vue上传图片到oss的方法示例(图片带有删除功能)
2018/09/27 Javascript
浅谈关于JS下大批量异步任务按顺序执行解决方案一点思考
2019/01/08 Javascript
vue微信分享的实现(在当前页面分享其他页面)
2019/04/16 Javascript
解决vue页面渲染但dom没渲染的操作
2020/07/27 Javascript
vue组件添加事件@click.native操作
2020/10/30 Javascript
[01:18]PWL开团时刻DAY10——一拳超人
2020/11/11 DOTA
python逐行读取文件内容的三种方法
2014/01/20 Python
Python科学计算环境推荐——Anaconda
2014/06/30 Python
Python基础教程之正则表达式基本语法以及re模块
2016/03/25 Python
小白入门篇使用Python搭建点击率预估模型
2018/10/12 Python
Python如何筛选序列中的元素的方法实现
2019/07/15 Python
Pytorch实现GoogLeNet的方法
2019/08/18 Python
Python 函数用法简单示例【定义、参数、返回值、函数嵌套】
2019/09/20 Python
Django 框架模型操作入门教程
2019/11/05 Python
中国专业的综合网上购物商城:京东
2016/08/02 全球购物
意大利奢侈品网站:Italist
2016/08/23 全球购物
大学本科毕业生求职简历的自我评价
2013/10/09 职场文书
农民入党思想汇报
2014/01/03 职场文书
庆中秋节主题活动方案
2014/02/03 职场文书
心理学专业大学生职业生涯规划范文
2014/02/19 职场文书
2014优秀大学生简历自我评价
2014/09/15 职场文书
私人房屋买卖协议书
2014/10/04 职场文书
井冈山红色之旅感想
2014/10/07 职场文书
2015年小学中秋节活动总结
2015/03/23 职场文书
思想品德课教学反思
2016/02/24 职场文书
Redis读写分离搭建的完整步骤
2021/09/14 Redis