我是 golang 的新手,正在尝试将从 oracle DB 接收到的字符串日期转换为 golang 中的时间。
这是公告链接:https://play.golang.org/p/z3OyC4-DTFA
timeTest, err := time.Parse("22-JAN-06", "26-JAN-17")
if err != nil {
fmt.Printf("\n\npaymentDateAfter: %v\n\n", timeTest)
} else {
fmt.Printf("\n\npaymentDateErr: %v\n\n", err)
}
任何人都可以帮助我理解这个问题。我试着搜索它并在堆栈溢出中找到了很多答案,但没有一个是针对这种格式的。
谢谢
最佳答案
如 the docs 中所述,time.Parse
中的layout
时间需要表示以下年/月/日/等...: Mon Jan 2 15:04:05 - 0700 MST 2006
但是,您使用的是 2006 年 1 月 22 日
。
如果您将代码更改为以下内容,它会起作用:
func main() {
test, err := time.Parse("2-Jan-2006", "26-MAR-2018")
if err != nil {
panic(err)
}
fmt.Println(test)
// Prints: 2018-03-26 00:00:00 +0000 UTC
}
注意:布局中的月份(Jan
)区分大小写,但要解析的字符串中的月份(MAR
)不区分大小写。
关于go - 将oracle时间字符串转换为time.Time golang,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48725291/