我正在寻找将UTC时间字符串转换为unix时间戳的选项。
我拥有的字符串变量是02/28/2016 10:03:46 PM
,需要将其转换为像1456693426
知道怎么做吗?
答案 0 :(得分:7)
首先,unix时间戳1456693426
在UTC中没有时间10:03:46 PM
而是9:03:46 PM
。
在time
包中有函数Parse,期望布局来解析时间。布局由参考时间Mon Jan 2 15:04:05 -0700 MST 2006
构成。所以在你的情况下,布局将是01/02/2006 3:04:05 PM
。使用Parse后,您会获得一个time.Time
结构,您可以在其中调用Unix来接收unix时间戳。
package main
import (
"fmt"
"time"
)
func main() {
layout := "01/02/2006 3:04:05 PM"
t, err := time.Parse(layout, "02/28/2016 9:03:46 PM")
if err != nil {
fmt.Println(err)
}
fmt.Println(t.Unix())
}