如何将此时间整数转换为 Ruby 中的日期? [复制]

Posted

技术标签:

【中文标题】如何将此时间整数转换为 Ruby 中的日期? [复制]【英文标题】:How do I convert this Time integer to a Date in Ruby? [duplicate] 【发布时间】:2014-03-02 20:07:45 【问题描述】:

我从外部 API 获取此标记:

1391655852

我需要将其转换为日期。我在互联网上和 SO 上看到了很多转换页面,但它们似乎都在朝着相反的方向发展。我根本不熟悉这种整数格式。


为什么这不是一个重复的问题 *

此问题不应标记为重复,因为引用的问题特别提到了seconds since epoch。虽然这实际上是我正在寻找的号码,但我不知道它被称为那个。从非常快速的投票和喜爱以及不到一周的 40 次观看来看,我认为seconds since epoch 时间格式在程序员中并不普遍。因此,SO 用户将从双向提问中受益。

【问题讨论】:

PS:某些语言确实使用epoch 的毫秒数提供日期到整数的转换(而 ruby​​ 使用纪元的秒数​​),因此在将日期与整数转换时需要小心 【参考方案1】:

为此使用Time.at

t = Time.at(i)

【讨论】:

【参考方案2】:

我肯定会接受@duck 的回答——在我看来,这是将整数转换为Time 的最佳方式——但如果您明确在寻找Date,你会想做更多的工作:

require 'date'

t = Time.at(i)
date = t.to_date

在上面的示例中,date 将属于 Date 类。

【讨论】:

以上是关于如何将此时间整数转换为 Ruby 中的日期? [复制]的主要内容,如果未能解决你的问题,请参考以下文章

将 INT 中的日期转换为 Google Calendar API 的 CreateEvent 的 DateTime

在 Ruby 中转换为日期时间和时间

如何将此 curl 命令转换为 Ruby rest-client put 请求?

如何将此字符串转换为具有这种格式的日期?

在 Ruby 中将整数转换为十六进制字符串

将标准 rails / ruby​​ 时间转换为美国格式 - 日期混淆