Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

How to convert Unix time to time.Time in golang? [duplicate]

Tags:

go

I want to covert Unix time (1494505756) to UTC format just

import "time"
timeNow := time.Now()

I want to restore timeNow to UTC format. How to do that?

like image 333
M.Mike Avatar asked May 11 '17 12:05

M.Mike


1 Answers

You can get UTC and unix from time interface itself.

To convert unix timestamp to time object. Use this:

t := time.Unix(1494505756, 0)
fmt.Println(t)

func Unix(sec int64, nsec int64) Time

Unix returns the local Time corresponding to the given Unix time, sec seconds and nsec nanoseconds since January 1, 1970 UTC. It is valid to pass nsec outside the range [0, 999999999]. Not all sec values have a corresponding time value. One such value is 1<<63-1 (the largest int64 value).

For UTC:

time.Now().UTC()

UTC returns t with the location set to UTC. Link: https://golang.org/pkg/time/#UTC

For Unix:

time.Now().Unix()

Unix returns t as a Unix time, the number of seconds elapsed since January 1, 1970 UTC. Link: https://golang.org/pkg/time/#Unix

like image 123
Abhilekh Singh Avatar answered Nov 09 '22 00:11

Abhilekh Singh