新手问题 Ruby 如何做时间比较

sz · 发布于 2017年05月08日 · 最后由 chalvern 回复于 2017年05月09日 · 673 次阅读
96

最近一个项目,如果输入时间为空,则立即做一件事,否则到指定输入时间在做,输入的时间为字符串格式如

str1=2017-1-2 12:12:00
 today = Time.new; 
 str2=today.strftime("%Y-%m-%d %H:%M:%S")
if str1==""
  do nothing
else
  str1==str2
  # do Something 
end

这个时间该如何比较啊,求大神指导

共收到 5 条回复
De6df3

用 Time 的函数来处理,而不是用字符串

https://ruby-doc.org/core-2.2.0/Time.html

Time 类型是可以直接做比较的

或者可以 today.to_i 转成数字的 unix time 来比较

15139
else
  str1==str2

我感觉我ruby白学了……

96
De6df3huacnlee 回复

谢谢。因为是搞java的,才接触ruby不久。还有一个问题,假如输入的时候是明天,那现在进入这个方法,肯定是不等于,这个方法就走完了,如何在指定时间在进入这个方法,触发这个事件,去做需要执行的任务啊

43079a

是不是在找whenever类似的定时器?

需要 登录 后方可回复, 如果你还没有账号请点击这里 注册