【问题标题】:Strange output after date conversion in Ruby on RailsRuby on Rails 中日期转换后的奇怪输出
【发布时间】:2011-06-24 05:02:20
【问题描述】:

我正在从 API 获取数据。附加到每个对象的日期采用以下格式:

时间戳是一个日期和时间 UTC 时间的事件。这表示 作为特定的毫秒数 自标准基础“时代”以来: 格林威治标准时间 1970 年 1 月 1 日 00:00:00

我正在尝试在 Ruby 中将其转换为不同的日期格式。

代码

objects.each do |obj|
  p "object"
  p obj.created
  p Time.at(obj.created)
end

输出

"object"
1308886130000
43446-12-14 10:33:20 +1000
"object"
1308886104000
43446-12-14 03:20:00 +1000
"object"
1308801345000
43444-04-07 03:10:00 +1000

年份显然不正确。我做错了什么?

我正在使用 Ruby 1.9.2 和 Rails 3.0.1

【问题讨论】:

    标签: ruby-on-rails ruby date


    【解决方案1】:

    Time.at 函数预计自纪元以来的时间(以秒为单位)。你给它毫秒,所以计算是很远的。

    将该时间戳除以 1000。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2015-07-25
      • 2016-01-31
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多