Timeオブジェクトの時分秒などの値をまとめて配列として取得する

作成した Time オブジェクトから年月日や時分秒などの値をそれぞれの値を要素とする配列として取得することができます。ここでは Ruby で Time オブジェクトの時分秒などの値を配列として取得する方法について解説します。

(2022 年 10 月 13 日公開 / 2022 年 10 月 26 日更新)

時分秒などの値を配列として取得する

Time クラスのオブジェクトから時分秒などの値を配列として取得する方法です。 Time クラスで用意されている to_a メソッドを使います。

to_a

Time クラスのオブジェクトに対して to_a メソッドを呼び出すと、オブジェクトを持つ 10 の値を要素とした配列を取得することができます。配列に格納される時刻要素と順序は次の通りです。

値の種類
sec秒(整数 0-60)
min分(整数 0-59)
hour時(整数 0-23)
mday日(整数で取得)
mon月(整数 1-12)
year年(整数)
wday曜日(整数 0-6)
yday年内通算日(整数 1-366)
isdst夏時間の有無(true or falseで取得)
zoneタイムゾーン(文字列で取得)

例えば次のように使用します。

t = Time.now
ary = t.to_a
サンプルコード

では簡単なサンプルで試してみます。

# encoding: UTF-8

item = %w[秒 分 時 日 月 年 曜日 年内通算日 夏時間 タイムゾーン]

t = Time.now
ary = t.to_a

for index in 0..9 do
  print(item[index] , ":", ary[index], "\n")
end

実行結果は次のようになります。

時刻要素を配列として受け取る

-- --

Ruby で Time オブジェクトの時分秒などの値を配列として取得する方法について解説しました。

( Written by Tatsuo Ikura )

サイト内検索
広告
Profile
profile_img

著者 / TATSUO IKURA

プログラミングや開発環境構築の解説サイトを運営しています。