在Go语言中解析日期

3
请帮助我在Golang中解析类似于2018-12-17 12:55:50 +0300的日期。我正在尝试使用布局。
layout := "2006-01-02 15:04:05 +0000"
dateString := "2018-12-17 12:55:50 +0300"
t, err := time.Parse(layout, dateString)
if err != nil {
    fmt.Println("Error while parsing date :", err)
}
fmt.Println(t.Format("2006-01-02 15:04:05"))

但编译器报错:解析日期时出错:将时间“2018-12-17 12:55:50 +0300”解析为“2006-01-02 15:04:05 +0000”时出错:无法将“300”解析为“+0000”

1个回答

5

Package time

import "time"

the [layout] reference time can be thought of as

01/02 03:04:05PM '06 -0700
使用-0700,而不是+0000
例如,
package main

import (
    "fmt"
    "time"
)

func main() {
    layout := "2006-01-02 15:04:05 -0700"
    dateString := "2018-12-17 12:55:50 +0300"
    t, err := time.Parse(layout, dateString)
    if err != nil {
        fmt.Println("Error while parsing date :", err)
    }
    fmt.Println(t.Format("2006-01-02 15:04:05"))
}

实验场: https://play.golang.org/p/Xr8zaTjODgC

输出:

2018-12-17 12:55:50

3
这个例子的运行是正确的,对我很有帮助。我认为这已经足够了。 - frankegoesdown

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接