【问题标题】:Converting Date.valueof primitive to Ruby将 Date.valueof 原语转换为 Ruby
【发布时间】:2015-09-11 11:41:35
【问题描述】:

我目前正在将一些 c++ 代码移植到 ruby​​,我正在从 zabbix 返回一个日期值,它作为日期原语返回。

目前执行此操作的代码是:

Math.round(((new Date().valueOf()) - parseInt(result[0].value) * 1000) / 86400000)

到目前为止我得到了这个:

(result[0]['value'].to_i*1000) / 86400000).round

不确定如何移植new Date().valueOf()

【问题讨论】:

  • new Date().valueOf() 返回什么,最终格式应该是什么?
  • Date.valueof 返回类似“1441972284808”的内容,最终格式应该是天数
  • @EamonnMcEvoy 您需要多少天?从年初开始?

标签: c++ ruby zabbix


【解决方案1】:

1441972284808 看起来像 Unix Timestamp 以毫秒为单位,所以你可以试试这个:

time = Time.at(1441972284808 / 1000.0)
# => 2015-09-11 16:51:24 +0500
time.strftime('%j') # days quantity from start of the year
# => "254"

【讨论】:

  • 谢谢,我不需要从年初开始几天,所以 time.day 工作得很好 :)
猜你喜欢
  • 1970-01-01
  • 2017-11-30
  • 1970-01-01
  • 2013-01-14
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2012-02-28
  • 2016-04-27
相关资源
最近更新 更多