我试图解析一个Unix
timestamp,但我超出范围错误。这不是真的有意义,因为布局是正确的(如在golang docs):
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将字符串解析为int64并创建时间戳与time.Unix:
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溢出。