当前位置: 首页 > 面试题库 >

如何将unix时间戳解析为time.Time

蒋奇
2023-03-14
问题内容

我正在尝试解析Unix时间戳,但超出范围错误。这对我来说真的没有意义,因为布局正确(如Go文档中所示):

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

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

编辑:

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



 类似资料:
  • 问题内容: 我正在寻找将UTC时间字符串转换为Unix时间戳的选项。 我拥有的字符串变量是,需要将其转换为unix时间戳,例如 任何想法如何做到这一点? 问题答案: 首先,unix时间戳没有时间,但以UTC为单位。 在包有功能解析与预计解析时的布局。布局是从参考时间开始构造的。因此,在您的情况下,布局应为。使用Parse之后,您将获得一个可以调用Unix来接收Unix时间戳的结构。

  • 问题内容: 我想以as 的形式解析时间戳。这样做时,如果秒是秒,它将去除秒。 如此处所述,我需要使用自定义格式化程序 这个可以用,但是返回一个: 当我解析字符串时,它再次剥离: 那么如何将日期解析为,而不是,并将日期保留在末尾? 问题答案: 您应该期望输出之间的差异 和 打印的值,预计不会产生与图案相同的输出。 当您查看时,您会看到它将时间部分委托给,这将有条件地显示秒: 如果其值为,则仅忽略秒字

  • 当我将字符串解析为时,它将再次剥离: 那么,如何将日期解析为,而不是,并在末尾保留呢?

  • 问题内容: 关于“ UNIX timestamp to MySQL time”,有很多问题要问。我需要相反的方式,是的…知道吗? 问题答案: 用途: 还要检查一下(以MySQL方式完成)。 http://dev.mysql.com/doc/refman/5.5/en/date-and-time- functions.html#function_unix- timestamp

  • 如果本地时间位于UTC时区,那么如何将转换为Unix时间戳? >。

  • 我知道这是一个非常常见的问题,但我觉得我找到的答案并没有真正解决问题。我将概述我的具体用例,并对来自其他SO答案和网络的信息进行总结。 对于我正在编写的服务,数据库条目被创建并存储在移动设备和我们的网站上,需要以两种方式同步。我们目前的目标是Android和iOS,它们都使用sqlite作为关系数据库。服务器端是使用Django和MySQL在Python中实现的,但将来可能会有其他解决方案取代它。