Go 将字符串解析到时间

Go 将字符串解析到时间,go,Go,我有以下字符串: 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 首先:您正在默默地忽略错误,这是作为time.Pa

我有以下字符串:

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

首先:您正在默默地忽略错误,这是作为
time.Parse的第二个返回值返回的。相反,我建议适当地处理错误

其次,让我们看一下以下文件:

Parse
解析格式化字符串并返回其表示的时间值布局通过显示参考时间(定义为2006年1月2日星期一15:04:05-0700 MST)的解释方式来定义格式,如果它是值;它作为输入格式的一个示例。然后将对输入字符串进行相同的解释

time.Parse
函数要求其
layout
参数表示固定的示例日期。因此,为了解析日期
Sun,2016年1月3日10:00:07 CET
,适当的示例布局字符串应该是
Mon,2006年1月2日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)
time.Parse()
返回错误。打印出来,你就会知道了。