将字符串解析为时间

我有以下字符串:


Sun, 03 Jan 2016 10:00:07 CET

我想把它解析成时间,但似乎无法弄清楚如何编写格式。


这是我到目前为止所得到的:


layout := "Mon, 01 Jan 03:04:05"

t, _ := time.Parse(layout, "Sun, 03 Jan 2016 10:00:07 CET")

fmt.Println(t)

我得到的输出是:


0001-01-01 00:00:00 +0000 UTC


三国纷争
浏览 161回答 1
1回答

繁花不似锦

首先:您默默地忽略了作为第二个返回值返回的错误time.Parse。我建议改为适当地处理错误。其次,让我们看看文档time.Parse:Parse解析格式化的字符串并返回它代表的时间值。布局通过显示参考时间定义格式,Mon Jan 2 15:04:05 -0700 MST 2006如果它是值,定义为将被解释;它作为输入格式的一个例子。然后将对输入字符串进行相同的解释。该time.Parse函数期望其layout参数表示固定的示例日期。因此,为了解析日期Sun, 03 Jan 2016 10:00:07 CET,适当的示例布局字符串应该是Mon, 02 Jan 2006 15:04:05 MST:layout := "Mon, 02 Jan 2006 15:04:05 MST"t, err := time.Parse(layout, "Sun, 03 Jan 2016 10:00:07 CET")if err != nil {    // handle the error somehow!}fmt.Println(t)
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Go