【问题标题】:Cannot parse a valid time in Go [closed]无法在 Go 中解析有效时间 [关闭]
【发布时间】:2021-04-25 10:48:36
【问题描述】:

我正在尝试解析格式的时间戳:

2021-03-31T13:38:14

所以我使用的布局格式为:2006-02-15T15:04:05

由于某种原因,我的所有日​​期时间对象都被正确解析,除了2021-03-31T13:38:142021-03-29T14:21:41。我收到一条错误消息:

解析时间“2021-03-31T13:38:14”:小时超出范围

为什么会这样?什么时候小时没有超出范围?

代码如下:

const DateFormat = "2006-02-15T15:04:05"
var toParse = "2021-03-31T13:38:14"
submittedAt, err := time.Parse(DateFormat, toParse)

【问题讨论】:

  • 你试过在DateFormat中使用2006-01-02吗?
  • 应该可以在正确的月份和日期下正常工作:play.golang.org/p/BNtT5udHDQ7
  • 哦,哇,我没有注意到这是错误的。谢谢,。
  • 如果输入也有 UTC 偏移量,您可以使用来自 constants 的 RFC3339。

标签: datetime go parsing time


【解决方案1】:

月份的格式是02,月份是01。所以你的布局格式应该是2006-01-02T15:04:05

检查其他格式以查看模式 https://golang.org/pkg/time/#pkg-constants

例如RFC33392006-01-02T15:04:05Z07:00

https://play.golang.org/p/ZHu6nbPtsJt

【讨论】:

    猜你喜欢
    • 2017-11-22
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2022-01-04
    • 1970-01-01
    • 1970-01-01
    • 2012-09-29
    • 1970-01-01
    相关资源
    最近更新 更多