2

这可能是一个愚蠢的问题,但我似乎无法找到如何将字符串格式的日期转换为日期时间格式。非常感谢!

s := "12-25-2012"
var t time.Time

t = s.Time() ??? 

我希望 t 包含 s 的值。

4

2 回答 2

4

您需要 time.Parse() 和与您提供的日期字符串匹配的格式字符串。

这是使用您的日期格式的示例。

package main

import (
    "fmt"
    "time"
    )

func main() {
    s := "12-25-2012"
    format_string := "01-02-2006"
    t, err := time.Parse(format_string, s)
    if err != nil {
        panic(err)
    }
    fmt.Printf("%v\n", t)
}

http://play.golang.org/p/YAeAJ3CNqO

您可以在这篇文章中阅读有关制作自定义格式字符串的更多信息。

于 2013-01-20T18:48:50.507 回答
2

根据这篇文章:

package main

import (
    "fmt"
    "time"
)

func main() {
    value  := "Thu, 05/19/11, 10:47PM"
    // Writing down the way the standard time would look like formatted our way
    layout := "Mon, 01/02/06, 03:04PM"
    t, _ := time.Parse(layout, value)
    fmt.Println(t)
}

// => "Thu May 19 22:47:00 +0000 2011"
于 2013-01-20T18:42:53.233 回答