Go 示例: 纪元

程序中一个常见的需求是获取自 Unix 纪元 起的秒数、毫秒数或纳秒数。以下是在 Go 中如何实现的。

package main
import (
    "fmt"
    "time"
)
func main() {

使用 time.NowUnixUnixMilliUnixNano 分别获取自 Unix 纪元起的秒数、毫秒数或纳秒数。

    now := time.Now()
    fmt.Println(now)
    fmt.Println(now.Unix())
    fmt.Println(now.UnixMilli())
    fmt.Println(now.UnixNano())

您也可以将自纪元起的整数秒数或纳秒数转换为相应的 time

    fmt.Println(time.Unix(now.Unix(), 0))
    fmt.Println(time.Unix(0, now.UnixNano()))
}
$ 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

接下来我们将介绍另一个与时间相关的任务:时间解析和格式化。

下一个示例:时间格式化 / 解析.