2012-02-08 114 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