go - 如何将 UTC 时间转换为 unix 时间戳

标签 go

我正在寻找将 UTC 时间字符串转换为 unix 时间戳的选项。

我的字符串变量是 02/28/2016 10:03:46 PM 需要将其转换为 unix 时间戳,例如 1456693426

知道怎么做吗?

最佳答案

首先,unix 时间戳 1456693426 没有时间 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())
}

关于go - 如何将 UTC 时间转换为 unix 时间戳,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35688419/

相关文章:

testing - 扩展现有的类型测试。T 以添加额外的检查

linux - Linux 上有用于创建环回设备的 golang 库吗?

process - 获取正在运行的应用程序的自定义状态

Go Varint 返回预期值的一半

go - 如何返回 channel

go - 使用 Goroutine 对数字进行排序时出现意外结果

go - image.Decode 在解码 .png 文件时返回错误

go - 使用gocql的cassandra查询中的可变参数

Golang 上下文。上下文传播

string - 在golang中寻找最长的单词