前往小程序,Get更优阅读体验!
立即前往
发布
社区首页 >专栏 >Go by Example 中文版: 时间戳

Go by Example 中文版: 时间戳

作者头像
ccf19881030
发布2020-09-17 16:21:47
发布2020-09-17 16:21:47
62800
代码可运行
举报
文章被收录于专栏:ccf19881030的博客ccf19881030的博客
运行总次数:0
代码可运行

Go by Example 中文版:时间戳

一般程序会有获取 Unix 时间 的秒数,毫秒数,或者微秒数的需求。来看看如何用 Go 来实现。 Go语言的示例代码如下:

代码语言:javascript
代码运行次数:0
复制
package main

// Go by Example 中文版: 时间戳
// 一般程序会有获取 Unix 时间 的秒数,毫秒数,或者微秒数的需求。来看看如何用 Go 来实现。
// https://gobyexample-cn.github.io/epoch

import (
	"fmt"
	"time"
)

func main() {
	// 分别使用time.Now的Unix和UnixNano,来获取从Unix纪元起,到现在经过的描述和纳秒数。
	now := time.Now()
	secs := now.Unix()
	nanos := now.UnixNano()
	fmt.Println(now)

	// 注意 UnixMillis 是不存在的,所以要得到毫秒数的话, 你需要手动的从纳秒转化一下。
	millis := nanos / 1000000
	fmt.Println(secs)
	fmt.Println(millis)
	fmt.Println(nanos)

	// 你也可以将Unix纪元起的整数秒或者纳秒转换到相应的时间。
	fmt.Println(time.Unix(secs, 0))
	fmt.Println(time.Unix(0, nanos))
}

运行结果:

代码语言:javascript
代码运行次数:0
复制
$ go run epoch.go 
2012-10-31 16:13:58.292387 +0000 UTC
1351700038
1351700038292
1351700038292387000
2012-10-31 16:13:58 +0000 UTC
2012-10-31 16:13:58.292387 +0000 UTC

在Goland中的运行结果如下图所示:

下面我们将看看另一个时间相关的任务:时间解析与格式化。

下一个例子: 时间的格式化和解析

@mmcgrana 编写 | everyx 翻译 | 项目地址 | license

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2020/09/16 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • Go by Example 中文版:时间戳
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档