2012-02-07 5 views
0

Я думаю, что это говорит все это:дата преобразования формата рубин

irb(main):014:0> DateTime.strptime("4/23/1967", "%m/%d/%y").to_s 
=> "2019-04-23T00:00:00+00:00" 

2019 подходит как год?

У меня есть несколько различных форматов даты:

4/23/1967

3-3-1985

я хотел бы, чтобы стандартизировать их обоих, чтобы отобразить в первом формате (с косой чертой).

ответ

3

%y занимает год в 2-х цифр, так 19. Тогда DateTime предполагает, что это 2019. Вам нужно %Y.

3

Ваша проблема заключается в том, что вы написали %y, где вы имели в виду %Y. Строки формата даты чувствительны к регистру.

irb(main):014:0> DateTime.strptime("4/23/1967", "%m/%d/%y").to_s 
=> "2019-04-23T00:00:00+00:00" 

но

irb(main):014:0> DateTime.strptime("4/23/1967", "%m/%d/%Y").to_s 
=> "1967-04-23T00:00:00+00:00" 
Смежные вопросы