Сделать Date # parse принять формат США вместо формата ЕС
С 1.9.2p0, Date # parse предполагает формат UE. Проверьте формат .rb, строка: 1042, если вы мне не верите.
В любом случае, как я могу заставить его принять формат США, чтобы:
> Date.parse("10/4/2010")
=> Mon, 04 Oct 2010
Вместо 10 апреля.
Я пробовал это:
class Date
def _parse_eu(str,e)
_parse_us(str,e)
end
end
но не повезло. Любые другие идеи?
Ответы
Ответ 1
Date.strptime - это то, что вы хотите, но, к сожалению, не похоже, что в документации есть строки форматирования даты. Я получил следующее для работы на основе Googling для строк формата:
1.9.2 > d = Date.strptime("10/4/2010", "%m/%d/%Y")
=> #<Date: 2010-10-04 (4910947/2,0,2299161)>
1.9.2 > d.day
=> 4
1.9.2 > d = Date.strptime("10/4/2010", "%d/%m/%Y")
=> #<Date: 2010-04-10 (4910593/2,0,2299161)>
1.9.2 > d.day
=> 10
Ответ 2
Вместо этого вы можете проверить strptime.