date – 如何解析golang中的unix时间戳

前端之家收集整理的这篇文章主要介绍了date – 如何解析golang中的unix时间戳前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我试图解析一个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)
}

play

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溢出。

猜你在找的Go相关文章