A common requirement in programs is getting the number of seconds, milliseconds, or nanoseconds since the Unix epoch. Here’s how to do it in Go. |
|
![]() ![]() package main |
|
import ( "fmt" "time" ) |
|
func main() { |
|
Use |
now := time.Now() fmt.Println(now) |
fmt.Println(now.Unix()) fmt.Println(now.UnixMilli()) fmt.Println(now.UnixNano()) |
|
You can also convert integer seconds or nanoseconds
since the epoch into the corresponding |
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 |
|
Next we’ll look at another time-related task: time parsing and formatting. |
Next example: Time Formatting / Parsing.