Ruby 1.8.7添加10分钟到时间对象

时间:2015-04-17 12:17:08

标签: ruby

所以我是ruby的新手,我现在仍然使用1.8.7。我在阅读完文档后尝试将10分钟添加到时间对象中,但我没有运气。

require "time"

curr_time = Time.now.strftime("%d-%b-%Y %H:%M:%S")
curr_time = curr_time + 600

然后我得到一个错误说

  

' +':无法将Fixnum转换为字符串(TypeError)

有什么想法吗?

2 个答案:

答案 0 :(得分:6)

这是因为在您的curr_time变量中,您获得了strftime方法调用的结果,即String,而不是Time实例。要添加10分钟,您可以执行以下操作:

curr_time = Time.now
(curr_time + 600).strftime("%d-%b-%Y %H:%M:%S")

答案 1 :(得分:4)

你应该"增加时间"到Time对象本身,而不是string表示:

require "time"

curr_time = Time.now
curr_time = curr_time + 600
formatted = curr_time.strftime("%d-%b-%Y %H:%M:%S")

希望能解决你的问题!