3

我有一个名为 dispatched_time 的日期时间,我从 Time.now 中减去它会产生一个浮点数,即:302.332,这是一个名为 elapsed_time 的方法。我需要找到一种方法来获取该数字的值并将其格式化为我认为的时间。即:13:20。

我尝试使用 elapsed_time.strftime("%H%M") 但 strftime 不会处理浮点数。

有人可以帮我在几秒钟内将浮点数转换为 HH:MM 格式吗?

4

2 回答 2

4

你可以试试Time.at(elapsed_time).utc.strftime("%H:%M")。这应该为您提供两次之间的小时/分钟,就像它本身就是一个时间一样创建。请注意,如果两次之间的时间间隔超过 24 小时,这可能效果不佳,在这种情况下,您需要在"%d"传递给的字符串中添加天参数 ( ) strftime

于 2012-06-22T19:57:55.617 回答
0

您可以尝试使用 dotiw 或 ruby​​-duration gem。它可能会为您简化事情。

于 2012-06-22T20:14:31.007 回答