在Go中解析日期

Sar*_*ard 16 date go

我正在尝试解析由焦油生成的时间戳,如'2011-01-19 22:15',但无法解决time.Parse的时髦API.

以下产生'解析时间'2011-01-19 22:15":月份超出范围'

package main
import (
    "fmt"
    "time"
    )

func main () {
    var time , error = time.Parse("2011-01-19 22:15","2011-01-19 22:15")
    if error != nil {
        fmt.Println(error.String())
        return
        }
    fmt.Println(time)
    }
Run Code Online (Sandbox Code Playgroud)

pet*_*rSO 33

按照Go time包文档中的说明进行操作.

布局中使用的标准时间是:

1月2日星期一15:04:05 MST 2006(MST是GMT-0700)

这是Unix时间1136243045.(将其视为01/02 03:04:05PM '06 -0700.)要定义自己的格式,请记下标准时间格式化的方式.

例如,

package main

import (
    "fmt"
    "time"
)

func main() {
    t, err := time.Parse("2006-01-02 15:04", "2011-01-19 22:15")
    if err != nil {
        fmt.Println(err)
        return
    }
    fmt.Println(time.SecondsToUTC(t.Seconds()))
}

Output: Wed Jan 19 22:15:00 UTC 2011
Run Code Online (Sandbox Code Playgroud)

  • 请注意,您不能仅使用任何年份或月份来使用模板,它必须是标准模板中的一个. (9认同)