- r - 以节省内存的方式增长 data.frame
- ruby-on-rails - ruby/ruby on rails 内存泄漏检测
- android - 无法解析导入android.support.v7.app
- UNIX 域套接字与共享内存(映射文件)
之前从未尝试过 Go,目前正在做一个小项目。其中一项任务是获取当前系统时间并以 YYYY-MM-DDT00:00:00Z
格式表示。我相信 Z
表示时间以 UTC 格式表示,但当我查看数据库时,所有时间戳都是这样的,即 2011-11-22T15:22:10Z
。
那么我如何在 Go 中格式化成这样呢?
更新我能够使用以下代码对其进行格式化
t := time.Now()
fmt.Println(t.Format("2006-01-02T15:04:05Z"))
现在的问题是,Z
在这里表示什么。我应该得到 UTC 时间吗?
另一个问题,看起来我用来格式化的值会影响输出,即当我使用 2019-01-02T15:04:05Z
时,输出变成了 2029-02 -02T20:45:11Z
,为什么?
最佳答案
Go 提供了非常灵活的方式来通过实例解析时间。为此,您必须以您选择的格式编写“引用”时间。引用时间是 Mon Jan 2 15:04:05 MST 2006
。在我的例子中,我使用这个引用时间来解析 Now()
:
fmt.Println(time.Now().UTC().Format(time.RFC3339))
如果想看的话还有其他的引用类型:
RFC822 = "02 Jan 06 15:04 MST"
RFC822Z = "02 Jan 06 15:04 -0700" // RFC822 with numeric zone
RFC850 = "Monday, 02-Jan-06 15:04:05 MST"
RFC1123 = "Mon, 02 Jan 2006 15:04:05 MST"
RFC1123Z = "Mon, 02 Jan 2006 15:04:05 -0700" // RFC1123 with numeric zone
RFC3339 = "2006-01-02T15:04:05Z07:00"
RFC3339Nano = "2006-01-02T15:04:05.999999999Z07:00"
或者您可以使用您想要的引用。
关于go - 如何将当前时间格式化为 YYYY-MM-DDTHH :MM:SSZ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54499195/
出于好奇,我尝试了一些原型(prototype)制作,但似乎只允许在第一个位置使用子例程的原型(prototype) &。 当我写作时 sub test (&$$) { do_somethin
我需要开发一个类似于 Android Play 商店应用程序或类似 this app 的应用程序.我阅读了很多教程,发现几乎每个教程都有与 this one 类似的例子。 . 我已经开始使用我的应用程
考虑一个表示“事件之间的时间”的列: (5, 40, 3, 6, 0, 9, 0, 4, 5, 18, 2, 4, 3, 2) 我想将这些分组到 30 个桶中,但桶会重置。期望的结果: (0, 1,
我是一名优秀的程序员,十分优秀!