将 RFC3339 字符串解析为时间时无法将时间解析为 T

我有一个来自 db 的字符串,比如说

dbString := "2020-03-16 14:46:13 +0530 IST"

我的要求是将此字符串作为 Timestamptz 插入到另一个表中

我正在尝试将 dbString 转换为 Time

timeToBeInserted := time.Parse(time.RFC3339,t.VO.DateLastModified)

我看到以下错误

+0000 UTC parsing time "2020-03-16 14:46:13 +0530 IST" as "2006-01-02T15:04:05Z07:00": cannot parse " 14:46:13 +0530 IST" as "T"


慕姐4208626
浏览 187回答 2
2回答

杨__羊羊

您的日期字符串与RFC3339格式不匹配:RFC3339&nbsp; &nbsp; &nbsp;= "2006-01-02T15:04:05Z07:00"您应该使用自定义格式。以下一个适用于您的字符串:dbString := "2020-03-16 14:46:13 +0530 IST"fmt.Println(time.Parse("2006-01-02 15:04:05 -0700 MST", dbString))// Output:// 2020-03-16 14:46:13 +0530 IST <nil>

海绵宝宝撒

您的时间字符串不是 RFC3339 格式,所以不要time.Parse说它是。而是使用time.Parse("2006-01-02&nbsp;15:04:05&nbsp;-0700&nbsp;MST",&nbsp;t.VO.DateLastModified)
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Go