-2

I have a datetime data 2021-01-28T14:07:36+09:00 as string. I want to convert it to time.Time. Tried

datetime := "2021-01-28T14:07:36+09:00"
layout := "2006-01-02 15:04:05"
da, err := time.Parse(layout, datetime)
if err != nil {
    fmt.Println(err)
}
fmt.Println(da)

Output

parsing time "2021-01-28T14:07:36+09:00" as "2006-01-02 15:04:05": cannot parse "T14:07:36+09:00" as " "
0001-01-01 00:00:00 +0000 UTC
iooi
  • 453
  • 2
  • 10
  • 23

1 Answers1

4

The datetime format is defined in RFC 3339. You can use pre-defined time layout const in time package.

    datetime := "2021-01-28T14:07:36+09:00"
    da, err := time.Parse(time.RFC3339, datetime)
    if err != nil {
        fmt.Println(err)
    }
    fmt.Println(da)

Check playground to test this.

Community
  • 1
  • 1
Yicheng Qin
  • 111
  • 5