2012-10-05 69 views
0

我試圖解析以下日期字符串:紅寶石轉換日期字符串在過去爲另一種格式

111005 

20111005 

我試圖使用Date.parse,但它的將其視爲0011而不是2011:

Date.parse("111005").strftime("%y%m%d") 

任何想法如何使用DateTime做到這一點?顯然,我可以在開始時連接20,但我希望避免這種情況。

+1

如何將電腦知道,如果你想2011年,1911年,2111,1811,2211,等等?如果你對我的問題的回答是明顯是2011年,那麼爲什麼不用concat 20呢? – sawa

+0

你爲什麼試圖避免在它上面加上'20'?這是系統中不昂貴的一行代碼。這是一個更大的問題小得多嗎? –

+0

Date確實將其視爲2011,您將其表示爲11.'Date.parse(「111005」)。year'#=> 2011 – steenslag

回答

1

你想與世紀的一年?這就是%Y選項:

Date.parse("111005").strftime("%Y%m%d") 
# => "20111005" 
相關問題