2012-02-08 71 views
1

我真的很难相信没有人遇到过这种情况,但我一直在使用Google搜索一个小时。很简单的时间Ruby 1.9似乎是解析无效的日期:Time.local解析无效日期

ruby-1.9.2-p290 pcp070211pcs:profile delwateo$ irb 
ruby-1.9.2-p290 :001 > Time.local(2011, 2, 31)  
=> 2011-03-03 00:00:00 -0500 

这不应该抛出一段时间的例外。有人能指出我在这方面的正确方向吗?

回答

0

这看起来像一个Ruby的bug(也发生在1.8中)。您可以使用Date.civil代替,如果你只需要一个Date对象没有时间,它会妥善处理这个:

Date.civil(2011,2,31) 
# => ArgumentError: invalid date 
+0

是的,我们也都看到了在1.9.3以及。现在我们已经设法解决这个问题,但我真正的问题是为什么?这似乎是一个基本的东西,只是一个未报告的错误 – Orion 2012-02-08 20:33:39

+0

我认为这只是一个错误。不再报道:http://bugs.ruby-lang.org/issues/5988 – 2012-02-08 21:00:26