在轨道中格式化浮点时间



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

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

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

你可以

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

您可以尝试使用 dotiw 或红宝石持续时间的宝石。它可能会为您简化事情。

最新更新