【发布时间】:2016-02-02 06:31:28
【问题描述】:
我遇到了一个问题,即 Go 时间解析在同一时区两次返回不同的值。
func timeParse() {
layout := "Mon, 2 Jan 2006 03:04:05 -0700 (MST)"
value1 := "Mon, 18 Jan 2016 01:48:52 -0800 (PST)"
value2 := "Tue, 19 Jan 2016 17:49:33 -0800 (PST)"
t1, _ := time.Parse(layout, value1)
fmt.Println(t1)
t2, _ := time.Parse(layout, value2)
fmt.Println(t2)
}
输出:
2016-01-18 01:48:52 -0800 PST
0001-01-01 00:00:00 +0000 UTC
注意第二个没有正确解析。
【问题讨论】:
-
t2, _ := time.Parse()。 “错误”是您省略了返回的error(第二个返回值是error)。永远不要忽略错误。如果您打印它,您会看到:hour out of range