golang 实现时间戳和时间的转化


Posted in Golang onMay 07, 2021

说实话,golang的时间转化还是很麻烦的,最起码比php麻烦很多,上码好好学学一下

package main 
import (
   "time"
   "fmt"
)
 
func main() {
   //获取当前时间
   t := time.Now() //2018-07-11 15:07:51.8858085 +0800 CST m=+0.004000001
   fmt.Println(t)
 
   //获取当前时间戳
   fmt.Println(t.Unix()) //1531293019
 
   //获得当前的时间
   fmt.Println(t.Uninx().Format("2006-01-02 15:04:05"))  //2018-7-15 15:23:00
 
   //时间 to 时间戳
   loc, _ := time.LoadLocation("Asia/Shanghai")        //设置时区
   tt, _ := time.ParseInLocation("2006-01-02 15:04:05", "2018-07-11 15:07:51", loc) //2006-01-02 15:04:05是转换的格式如php的"Y-m-d H:i:s"
   fmt.Println(tt.Unix())                             //1531292871
 
   //时间戳 to 时间
   tm := time.Unix(1531293019, 0)
   fmt.Println(tm.Format("2006-01-02 15:04:05")) //2018-07-11 15:10:19
 
   //获取当前年月日,时分秒
   y := t.Year()                 //年
   m := t.Month()                //月
   d := t.Day()                  //日
   h := t.Hour()                 //小时
   i := t.Minute()               //分钟
   s := t.Second()               //秒
   fmt.Println(y, m, d, h, i, s) //2018 July 11 15 24 59
}

补充:Golang 13位时间戳转time.Time

时间戳:

时间戳是使用数字签名技术产生的数据,签名的对象包括了原始文件信息、签名参数、签名时间等信息。时间戳系统用来产生和管理时间戳,对签名对象进行数字签名产生时间戳,以证明原始文件在签名时间之前已经存在。

mysql类型timestamp(时间戳)和datetime(时间)差别:

timestamp占用4个字节;

datetime占用8个字节;

timestamp范围1970-01-01 00:00:01.000000 到 2038-01-19 03:14:07.999999;

datetime是1000-01-01 00:00:00.000000 到 9999-12-31 23:59:59.999999;

时间戳格式:

10位数的时间戳是以 秒 为单位,如:1530027865

13位数的时间戳是以 毫秒 为单位, 如:1530027865231

19位数的时间戳是以 纳秒 为单位,如:1530027865231834600

Golang获取当前时间或时间戳

// string
time.Now().Format("2006-01-02 15:04:05")
// time.Time
time.Now()
// int64 时间戳,默认10位,单位:秒
time.Now().UnixNano()

13位时间戳转时间格式

func UnixToTime(e string) (datatime time.Time, err error) {
 data, err := strconv.ParseInt(e, 10, 64)
 datatime = time.Unix(data/1000, 0)
 return
}

时间转13位时间戳

func TimeToUnix(e time.Time) int64 {
 timeUnix, _ := time.Parse("2006-01-02 15:04:05", e.Format("2006-01-02 15:04:05"))
 return timeUnix.UnixNano() / 1e6
}

以上为个人经验,希望能给大家一个参考,也希望大家多多支持三水点靠木。如有错误或未考虑完全的地方,望不吝赐教。

Golang 相关文章推荐
golang http使用踩过的坑与填坑指南
Apr 27 Golang
浅谈golang 中time.After释放的问题
May 05 Golang
go类型转换及与C的类型转换方式
May 05 Golang
goland 设置project gopath的操作
May 06 Golang
基于Golang 高并发问题的解决方案
May 08 Golang
Golang中异常处理机制详解
Jun 08 Golang
Go语言实现Base64、Base58编码与解码
Jul 26 Golang
手把手教你导入Go语言第三方库
Aug 04 Golang
Go语言 详解net的tcp服务
Apr 14 Golang
golang定时器
Apr 14 Golang
Golang 入门 之url 包
May 04 Golang
详解Go语言中配置文件使用与日志配置
Jun 01 Golang
Golang Gob编码(gob包的使用详解)
May 07 #Golang
go mod 安装依赖 unkown revision问题的解决方案
解决golang 关于全局变量的坑
May 06 #Golang
Goland使用Go Modules创建/管理项目的操作
解决goland 导入项目后import里的包报红问题
Go 自定义package包设置与导入操作
goland 设置project gopath的操作
You might like
php数组函数序列之end() - 移动数组内部指针到最后一个元素,并返回该元素的值
2011/10/31 PHP
PHP7导出Excel报ERR_EMPTY_RESPONSE解决方法
2019/04/16 PHP
php使用redis的几种常见操作方式和用法示例
2020/02/20 PHP
父窗口获取弹出子窗口文本框的值
2006/06/27 Javascript
Javascript打印网页部分内容的脚本
2008/11/17 Javascript
jQuery 学习第七课 扩展jQuery的功能 插件开发
2010/05/17 Javascript
基于jquery的跟随屏幕滚动代码
2012/07/24 Javascript
提高jQuery性能的十个诀窍
2013/11/14 Javascript
原生js和jQuery随意改变div属性style的名称和值
2014/10/22 Javascript
JQuery实现展开关闭层的方法
2015/02/17 Javascript
chrome下判断点击input上标签还是其余标签的实现方法
2016/09/18 Javascript
详解Nodejs的timers模块
2016/12/22 NodeJs
Vue.js实现模拟微信朋友圈开发demo
2017/04/20 Javascript
原生JS+Canvas实现五子棋游戏实例
2017/06/19 Javascript
微信小程序获取微信运动步数的实例代码
2017/07/20 Javascript
关于vue中的ajax请求和axios包问题
2018/04/19 Javascript
解决vue 按钮多次点击重复提交数据问题
2018/05/10 Javascript
vue使用Font Awesome的方法步骤
2019/02/26 Javascript
vue-cli3+ts+webpack实现多入口多出口功能
2019/05/30 Javascript
详解在vue-cli3.0中自定css、js和图片的打包路径
2019/08/26 Javascript
浅谈vue中resetFields()使用注意事项
2020/08/12 Javascript
JS+CSS实现炫酷光感效果
2020/09/05 Javascript
使用url_helper简化Python中Django框架的url配置教程
2015/05/30 Python
kafka-python批量发送数据的实例
2018/12/27 Python
Python字符串逆序的实现方法【一题多解】
2019/02/18 Python
Python面向对象之Web静态服务器
2019/09/03 Python
分布式全文检索引擎ElasticSearch原理及使用实例
2020/11/14 Python
教师岗位职责范本
2013/12/29 职场文书
大学生自我评价范文分享
2014/02/21 职场文书
计算机毕业生自荐信范文
2014/03/23 职场文书
4s店销售经理岗位职责
2014/07/19 职场文书
2014年党建工作汇报材料
2014/11/02 职场文书
开会通知
2015/04/20 职场文书
学习社交礼仪心得体会
2016/01/22 职场文书
Java实现超大Excel文件解析(XSSF,SXSSF,easyExcel)
2022/07/15 Java/Android
使用CSS实现六边形的图片效果
2022/08/05 HTML / CSS