如何parsinggolang中的unix时间戳

我试图parsing一个Unix 时间戳,但我超出了范围的错误。 这对我来说没有什么意义,因为布局是正确的(如在golang文档中):

package main import "fmt" import "time" func main() { tm, err := time.Parse("1136239445", "1405544146") if err !=nil{ panic(err) } fmt.Println(tm) } 

time.Parse函数不会执行Unix时间戳。 相反,您可以使用strconv.ParseInt将stringparsing为int64并使用strconv.ParseInt创build时间戳:

 package main import ( "fmt" "time" "strconv" ) func main() { i, err := strconv.ParseInt("1405544146", 10, 64) if err != nil { panic(err) } tm := time.Unix(i, 0) fmt.Println(tm) } 

输出:

 2014-07-16 20:55:46 +0000 UTC 

游乐场: http //play.golang.org/p/v_j6UIro7a

编辑:

strconv.Atoi更改为strconv.ParseInt以避免32位系统上的int溢出。