我认为这说明了一切:
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
我想将它们标准化,以第一种格式显示(带斜杠)。
答案 0 :(得分: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"
答案 1 :(得分:3)
%y
以2位数字表示年份,因此19.然后DateTime假定它是2019年。您需要%Y
。