2012-02-23 50 views
0

我有一個日期時間格式的字符串「02/22/12 01:04」(24小時時間格式)我需要從中減去6分鐘。 (比如每次使用循環減去1分鐘),並將其存儲在陣列中所有6個不同的時間。我需要在Ruby 1.8.7中做到這一點。你可以幫我嗎?從紅寶石時間中抽出分鐘

回答

2

在軌,你可以這樣做,但我不知道這創業板導軌,您可以:

# to get 2012, use "02/22/2012" 
# note this gives you the year 0012, not 2012. 

my_date = "02/22/12 01:04".to_time 
my_date_array = [] 
6.times do 
    my_date -= 1.minute 
    my_date_array.push(my_date.strftime("%D/%m/%Y %I:%M")) 
end 

我從你列出你需要做的這Rails中的標籤承擔。適用於Rails 3+,使用Ruby 1.8.7。

+1

「12年2月22日01:04」 .to_time將幫助ü有點 – Jak 2012-02-23 11:20:45

+0

謝謝@Jak。 user656213確實指定了字符串輸入,我沒有解決這個問題。雖然我認爲這一年是錯誤的,但是字符串在問題中已經列出。我將使用此建議更新答案。謝謝! – kikuchiyo 2012-02-23 16:20:44

1

這是紅寶石1.8.7一個真正awefull工作:

require 'time' 
require 'date' 

6.times.map { |i| Time.parse(DateTime.strptime("02/22/12 01:04", "%m/%d/%y %H:%M").to_s) - i * 60} 
# => [Wed Feb 22 02:04:00 +0100 2012, Wed Feb 22 02:03:00 +0100 2012, Wed Feb 22 02:02:00 +0100 2012, Wed Feb 22 02:01:00 +0100 2012, Wed Feb 22 02:00:00 +0100 2012, Wed Feb 22 01:59:00 +0100 2012]