- Home ›
- Ruby入門 ›
- 時刻(Time)クラス
Timeオブジェクトの起算時からの経過秒数を取得する
Time クラスのオブジェクトは内部的には起算時である 1970 年 1 月 1 日午前 0 時からの経過秒数を保持しています。この値を必要に応じて年月日や時分秒などに換算して利用するのですが経過秒数そのものを取得することもできます。ここでは Ruby で Time オブジェクトが保持している起算時からの経過秒数を取得する方法について解説します。
(Last modified: )
起算時からの経過秒数を取得する
Time
クラスのオブジェクトは保持している起算時からの経過秒数を取得する方法です。 Time
クラスで用意されている to_f
メソッドなどを使います。
to_f to_i tv_sec
to_f
メソッドは起算時からの経過秒数を浮動小数点数で取得します。このメソッドの場合は 1 秒未満の値も取得できます。
to_i
メソッド及び tv_sec
メソッドの場合は起算時からの経過秒数を整数で取得します。このメソッドの場合は最小単位が秒となります。
例えば次のように使用します。
t = Time.now puts(t.to_f) # 1666781162.4134245 puts(t.to_i) # 1666781162
サンプルコード
では簡単なサンプルで試してみます。
# encoding: UTF-8 t = Time.now puts(t) puts("to_f = " + t.to_f.to_s) puts("to_i = " + t.to_i.to_s) puts("tv_sec = " + t.tv_sec.to_s)
実行結果は次のようになります。
-- --
Ruby で Time オブジェクトが保持している起算時からの経過秒数を取得する方法について解説しました。
( Written by Tatsuo Ikura )
Profile
著者 / TATSUO IKURA
プログラミングや開発環境構築の解説サイトを運営しています。