如何在 Go 中将时间戳格式化为 GMT?

Posted

技术标签:

【中文标题】如何在 Go 中将时间戳格式化为 GMT?【英文标题】:How do I format a timestamp as GMT in Go? 【发布时间】:2019-02-08 23:05:07 【问题描述】:

我需要使用 RFC2616(HTTP 日期的标准)格式化时间戳。但是,标准说:

所有 HTTP 日期/时间戳必须以格林威治标准时间 (GMT) 表示,无一例外。

从一点挖掘来看,GMT 和 UTC 不是一回事。有没有一种正确的方法可以在 Go 中将时间戳转换为 GMT?

【问题讨论】:

您不能将时间戳格式化为 GMT,因为 GMT 不是一种格式。这是一个时区。 【参考方案1】:

使用 http.TimeFormat 布局来格式化 HTTP 标头的时间。此布局采用 UTC 位置的时间。

 s := t.UTC().Format(http.TimeFormat)

如果已知时间为 UTC,则可以跳过对 UTC() 的调用:

 s := t.Format(http.TimeFormat)

【讨论】:

以上是关于如何在 Go 中将时间戳格式化为 GMT?的主要内容,如果未能解决你的问题,请参考以下文章

如何以 GMT 格式获取今天的时间戳 - Kotlin

如何在 java 中获取当前的 Linux GMT 时间戳?

AWS Athena (Presto) - 如何将时间戳格式化为日期格式?

使用 POSIX 将时间戳转换为 GMT

如何在Oracle中将时间戳转化为日期格式

如何在android中将日期转换为firebase时间戳格式