Преобразование строки в дату (IST с +0530) - PullRequest
0 голосов
/ 21 сентября 2018

Я не могу преобразовать строку "2017-12-07T20:01:33+0530" в формат даты.Я использую RFC3339 и RFC3339Nano , но все еще получаю следующую ошибку:

0001-01-01 00:00:00 +0000 UTC parsing time "2016-01-17 20:04:05 +0530": hour out of range
IST to UTC: 0001-01-01 00:00:00 +0000 UTC

Это мой код:

IST, err := time.LoadLocation("Asia/Kolkata")
if err != nil {
    fmt.Println(err)
    return
}

const longForm = "2006-01-02 15:04:05 +0530"
t, err := time.ParseInLocation(longForm, "2016-01-17 20:04:05 +0530", IST)
fmt.Println(t, err)
fmt.Printf("IST to UTC: %v\n\n", t.UTC())

1 Ответ

0 голосов
/ 21 сентября 2018

Неправильный спецификатор формата для часового пояса;у вас есть:

const longForm = "2006-01-02 15:04:05 +0530"

Но часовой пояс определяется как -0700, а не +0530.Так должно быть:

const longForm = "2006-01-02 15:04:05 -0700"
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...