Ruby 〜Time,Dateオブジェクト覚書〜

Time,Dateオブジェクトについて

Rubyにおいて日付や時間を扱うにはTime、Dateオブジェクトで表現できる。

Timeメソッドについて

Timeメソッドで時間を扱う

次のコマンドで時間とタイムゾーンを表示できる。

[1] pry(main)> Time.now
=> 2019-06-02 13:01:17 +0900
[2] pry(main)> Time.now.zone
=> "JST"
[3] pry(main)> 
任意のタイムオブジェクトを作成可能
[3] pry(main)> datetime = Time.new(2018,2,1,12,30)
=> 2018-02-01 12:30:00 +0900
[4] pry(main)>

好きな日付フォーマットでも作成することも可能

[6] pry(main)> datetime.strftime('%Y年 %m月 %d日 %H時%M分')
=> "2018年 02月 01日 12時30分"
[7] pry(main)> 

Dateメソッドについて

RubyではいきなりDateメソッドが使えない。

[7] pry(main)> Date
NameError: uninitialized constant Date
Did you mean?  Data
from (pry):7:in `__pry__'
[8] pry(main)> 

なのでrequire Dateでライブラリを読み込むことでDateオブジェクトが使用できるようになる。
また、todayメソッドで現在の時刻を表示できる。

[8] pry(main)> require "date"
=> true
[9] pry(main)> Date
=> Date
[10] pry(main)> 
[11] pry(main)> Date.today
=> #<Date: 2019-06-02 ((2458637j,0s,0n),+0s,2299161j)>
[12] pry(main)> 
Dateオベジェクトでも任意の日付フォーマットで表示可能
[12] pry(main)> Date.new(2019,6,2)
=> #<Date: 2019-06-02 ((2458637j,0s,0n),+0s,2299161j)>
[13] pry(main)> Date.new(2019,6,2).strftime('%Y年 %m月 %d日 %H時%M分')
=> "2019年 06月 02日 00時00分"
[14] pry(main)>