Как извлечь метку времени unix и получить дату
У меня есть целое число
x := 1468540800
Я хочу извлечь дату из этой временной метки unix в Golang. Я пробовал time.ParseDuration , но похоже, что это не правильный способ извлечь дату из этого. Разговор должен происходить вот так http://www.unixtimestamp.com/index.php
Я намерен конвертировать в формат ISO 8601, возможно. Мне нужна строка типа 2016-09-14.
4 ответов:
Вы можете использовать
t := time.Unix(int64(x), 0)с местоположением, установленным в местное время.
Или используйтеt := time.Unix(int64(x), 0).UTC()с местоположением, установленным в UTC.Вы можете использовать
t.Format("2006-01-02")для форматирования, Код (примерьте игровую площадку Go):package main import ( "fmt" "time" ) func main() { x := 1468540800 t := time.Unix(int64(x), 0).UTC() //UTC returns t with the location set to UTC. fmt.Println(t.Format("2006-01-02")) }Вывод:
2016-07-15
Использование
time.Unixс наносекундами, равными 0.t := time.Unix(int64(x), 0)Игровая площадка: https://play.golang.org/p/PpOv8Xm-CS .
Вы можете использовать strconv.ParseInt () для разбора на int64 в сочетании со временем.Юникс.
myTime,errOr := strconv.ParseInt(x, 10, 64) if errOr != nil { panic(errOr) } newTime := time.Unix(myTime, 0)
Comments