Timeオブジェクトの生成
p Time.new #=> 2014-05-09 12:01:33 +0900 # 現在日時のTimeオブジェクトを生成する p Time.now #=> 2014-05-09 12:01:33 +0900 # newと同様 p Time.local(1999,12,31,23,59,59) #=> 1999-12-31 23:59:59 +0900 # 指定の日時で生成する
現在の時刻を取得する
day = Time.now p day #=> "Sun May 20 23:48:45 JST 2001" p day.year #=> 2001 p day.month #=> 5 p day.day #=> 20 p day.hour #=> 23
時刻を任意のフォーマットで扱う
Time.now.strftime("%Y-%m-%d %H:%M:%S") #=> "2009-03-01 00:31:21"
上記フォーマットに指定した記号
%Y 西暦を表す数 %m 月を表す数字(01-12) %d 日(01-31) %H 24時間制の時(00-23) %M 分(00-59) %S 秒(00-60) (60はうるう秒)
時刻オブジェクトを文字列に変換する
#Time#to_sメソッドにより時刻オブジェクトを文字列へ変換 day = Time.now p day.to_s #=> "Now, Sunday May 20 23:33:37 JST 2001"
時間の加減(秒指定)
時刻オブジェクトに任意の時間(秒指定)を加減することができる
# 1秒加算 day = Time.local(2001, 5, 20, 23, 59, 59) #=> Sun May 20 23:59:59 JST 2001 day = day + 1 #=> Mon May 21 00:00:00 JST 2001 # 1日加算 day = Time.local(2000, 12, 31, 0, 0, 0) #=> Sun Dec 31 00:00:00 JST 2000 day = day + 24*60*60 #=> Mon Jan 01 00:00:00 JST 2001