時刻を format 文字列に従って文字列に変換した結果を返します。
- [PARAM] format:
-
フォーマット文字列を指定します。使用できるものは 以下の通りです。
- %A: 曜日の名称(Sunday, Monday ... )
- %a: 曜日の省略名(Sun, Mon ... )
- %B: 月の名称(January, February ... )
- %b: 月の省略名(Jan, Feb ... )
- %C: 世紀 (2009年であれば 20)
- %c: 日付と時刻
- %D: 日付 (%m/%d/%y)
- %d: 日(01-31)
- %e: 日。一桁の場合、半角空白で埋める ( 1..31)
- %F: %Y-%m-%d と同等 (ISO 8601の日付フォーマット)
- %H: 24時間制の時(00-23)
- %h: %b と同等
- %I: 12時間制の時(01-12)
- %j: 年中の通算日(001-366)
- %k: 24時間制の時。一桁の場合、半角空白で埋める ( 0..23)
- %L: ミリ秒 (000..999)
- %l: 12時間制の時。一桁の場合、半角空白で埋める ( 0..12)
- %M: 分(00-59)
- %m: 月を表す数字(01-12)
- %n: 改行 (\n)
- %N: 秒の小数点以下。桁の指定がない場合は9桁 (ナノ秒)、%6N: マイクロ秒 (6桁)、%3N: ミリ秒 (3桁)
- %P: 午前または午後(am,pm)
- %p: 午前または午後(AM,PM)
- %R: 24時間制の時刻。%H:%M と同等。
- %r: 12時間制の時刻。%I:%M:%S %p と同等。
- %S: 秒(00-60) (60はうるう秒)
- %s: 1970-01-01 00:00:00 UTC からの経過秒
- %T: 24時間制の時刻。%H:%M:%S と同等。
- %t: タブ文字 (\t)
- %U: 週を表す数。最初の日曜日が第1週の始まり(00-53)
- %u: 月曜日を1とした、曜日の数値表現 (1..7)
- %v: VMS形式の日付 (%e-%b-%Y)
- %V: ISO 8601形式の暦週 (01..53)
- %W: 週を表す数。最初の月曜日が第1週の始まり(00-53)
- %w: 曜日を表す数。日曜日が0(0-6)
- %X: 時刻
- %x: 日付
- %Y: 西暦を表す数
- %y: 西暦の下2桁(00-99)
- %Z: タイムゾーン
- %z: タイムゾーン。UTCからのオフセット (例 +0900)
- %:z: タイムゾーン。コロンが入ったUTCからのオフセット (例 +09:00)
- %::z: タイムゾーン。コロンが入った秒まで含むUTCからのオフセット (例 +09:00:00)
- %%: %自身
このメソッドは strftime(3) や glibcの仕様を参考に作成されており、以下のオプションが利用できます。
- ^: 大文字で出力を行なう
- #: 小文字であれば大文字に、大文字であれば小文字に変更する
- -: 左寄せにする(0埋めや空白埋めを行わない)
- _: 空白埋めにする
- 0: 0埋めにする
- 数値: 表示桁数を指定する
t = Time.now #=> 2010-09-05 15:41:17 0900
t.strftime("Printed on %m/%d/%Y") #=> "Printed on 09/05/2010"
t.strftime("Printed on %m/%-d/%_6Y") #=> "Printed on 09/5/ 2010"
t.strftime("at %I:%M%p") #=> "at 03:41PM"
t.strftime("at %I:%M%#p") #=> "at 03:41pm"