去time.Parse()获得"月份超出范围"错误

时间:2016-11-04 14:55:28

标签: go time

我是Go的新手,我正在创建一个小的控制台脚本。你可以在这里查看我的代码:

package main

import (
    "bufio"
    "fmt"
    "os"
    "time"
)

func main() {
    reader := bufio.NewReader(os.Stdin)
    fmt.Println("Calculate")
    fmt.Print("Hours and minutes: ")
    start, _, _ := reader.ReadLine()
    begin, err := time.Parse("2016-12-25 00:00:00", "2016-12-25 "+string(start)+":00")
    if err != nil {
        fmt.Println(err)
    }
    fmt.Println(begin)
}

我看过相关的question,但我无法理解原因。

这是我在运行代码后遇到的错误:

parsing time "2016-12-25 22:40:00": month out of range
0001-01-01 00:00:00 +0000 UTC

关于我做错什么的任何想法?

由于

1 个答案:

答案 0 :(得分:10)

您在layout的{​​{1}}参数中使用了错误的参考时间time.Parse

将您的Jan 2, 2006 at 3:04pm (MST)行更改为以下内容,它将起作用:

begin

func Parse