日期strptime返回无效日期

时间:2012-04-11 12:18:48

标签: ruby irb

这是我的IRB会议

1.9.2p290 :020 > Date.strptime("31-2-2010", "%d-%m-%Y")
ArgumentError: invalid date

我已经给出了正确的值,但它正在返回ArgumentError。我在这里错过了什么吗?

2 个答案:

答案 0 :(得分:4)

是的,你遗失了一些东西:
无论一年如何,二月都不会有31天。

你给它一个无效的日期。

答案 1 :(得分:0)

请注意,Time.strptime("31-2-2010", "%d-%m-%Y")会为您提供2010-03-03 00:00:00 +0000

我使用Time.strptime("31-2-2010", "%d-%m-%Y").to_date来避免无效的日期错误。