【问题标题】:Format date in go lang from 2019-01-02 to 2019/01/01 [closed]go lang 格式日期从 2019-01-02 到 2019/01/01 [关闭]
【发布时间】:2019-12-12 18:01:03
【问题描述】:

有人可以帮我如何在 go lang 中格式化从 2019-01-02 到 2019/01/01 的日期。这是我到目前为止的代码

str := "2019-01-02 00:00:00"
//layout := "2006-01-02T15:04:05.000Z"

t, err := time.Parse("2006/01/02 15:04:05", str)

if err != nil {
    fmt.Println(err)
}
fmt.Println(t)

而且它总是抛出parsing time "2019-01-02 00:00:00" as "2006/01/02 15:04:05": cannot parse "-01-02 00:00:00" as "/"

我看过教程,但是用处不大

【问题讨论】:

  • 错误很明显 - 您要求它使用您想要的输出格式解析输入。它不能,因为那不是输入的格式。您需要以它所在的格式解析输入,然后您可以将其格式化为输出以您想要的输出格式

标签: go strftime


【解决方案1】:

解析需要str的格式,next将时间格式化为期望的格式

str := "2019-01-02 00:00:00"
//layout := "2006-01-02T15:04:05.000Z"

t, err := time.Parse("2006-01-02 15:04:05", str)

if err != nil {
    fmt.Println(err)
}
fmt.Println(t.Format("2006/01/02 15:04:05"))

【讨论】:

  • 谢谢圣地亚哥
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2020-01-25
  • 1970-01-01
  • 2020-05-12
  • 2018-01-03
  • 1970-01-01
  • 1970-01-01
  • 2014-11-14
相关资源
最近更新 更多