5

我试图弄清楚为什么我invalid date在某些日期不断收到错误。

例如:

这有效:

e = "07/02/2013"
 => "07/02/2013" 
start_date = DateTime.parse(e).beginning_of_day.strftime("%Y-%d-%m %H:%M:%S")
 => "2013-07-01 00:00:00"
end_date = DateTime.parse(e).end_of_day.strftime("%Y-%d-%m %H:%M:%S")
 => "2013-07-02 23:59:59" 

这返回ArgumentError: invalid date

 e = "07/18/2013"
=> "07/18/2013" 
start_date = DateTime.parse(e).beginning_of_day.strftime("%Y-%d-%m %H:%M:%S")
ArgumentError: invalid date
from (irb):53:in `parse'
end_date = DateTime.parse(e).end_of_day.strftime("%Y-%d-%m %H:%M:%S")
ArgumentError: invalid date
from (irb):55:in `parse'

在这两种情况下,我都使用相同的日期格式。这可能是什么原因/我需要改变什么来解决它?

4

1 回答 1

4

日期的格式为 dd/mm/yyyy。您正在尝试创建日期,即 2013 年第 18 个月的第 7 天。

如果要自定义日期格式,可以使用strptime 。

于 2013-07-22T19:06:52.673 回答