*目次 [#w09209d0]
#contents

*基本 [#wa1076b1]

**参考情報 [#u07ff16d]
-[[floatingdays: Rubyの Dateと Timeと DateTimeの比較:http://fdays.blogspot.jp/2007/12/ruby-date-time-datetime.html]]
**Timeクラス [#l564fef6]
-元からある組み込みクラス。
-時刻+日付を扱える。
-しかし1970年以前の日付を扱えないので、時間を使うときに限定したほうがいいのかもしれない。

**Dateクラス [#f3c87b59]
-require 'date'が必要。
-日付範囲の制限がない。

**DateTimeクラス [#na4551f8]
-require 'date'が必要。
-日付範囲の制限がない。
-時刻も扱える。

*Time [#g46144a6]

**現在の時刻を得る [#xd72381e]
 Time.now

**Time.localを使う [#b98461fd]
 Time.local(2010, 6, 20, 9, 10, 20)

*Timeを文字列に変換する [#n806496d]
***to_sを使う [#lfe15383]
 Time.now.to_s
 => "Mon Jun 07 22:02:03 +0900 2010"
***strftimeを使う [#p721f167]
Time#strftime("書式文字列")。書式は次の文字の組み合わせ。
-%A: 曜日の名称(Sunday, Monday ... )
-%a: 曜日の省略名(Sun, Mon ... )
-%B: 月の名称(January, February ... )
-%b: 月の省略名(Jan, Feb ... )
-%c: 日付と時刻
-%d: 日(01-31)
-%H: 24時間制の時(00-23)
-%I: 12時間制の時(01-12)
-%j: 年中の通算日(001-366)
-%M: 分(00-59)
-%m: 月を表す数字(01-12)
-%p: 午前または午後(AM,PM)
-%S: 秒(00-60) (60はうるう秒)
-%U: 週を表す数。最初の日曜日が第1週の始まり(00-53)
-%W: 週を表す数。最初の月曜日が第1週の始まり(00-53)
-%w: 曜日を表す数。日曜日が0(0-6)
-%X: 時刻
-%x: 日付
-%Y: 西暦を表す数
-%y: 西暦の下2桁(00-99)
-%Z: タイムゾーン trap
-%%: %自身
***yyyy-mm-ss HH:MM:SS 形式に変換 [#i13f17af]
 Time.now.strftime("%Y-%m-%d %H:%M:%S")

***strftime実例集 [#faf1c962]
-yyyy-mm-dd HH:MM:SS 形式
 t.strftime("%Y-%m-%d %H:%M:%S")
 => "2010-06-07 22:10:14"
-yyyymmdd
 Time.now.strftime("%Y%m%d")

***yyyymmssを取得 [#w6021845]
-strftimeを使う
 Time.now.strftime("%Y%m%d")
*Date [#dfb0e1f1]
**現在の日付を取得 [#w50a1061]
 Date.today
**月末/月初を求める [#h30b1757]
-[[rubyで月の月初と月末の日付をつくる - 猫も茶を飲む:http://d.hatena.ne.jp/chaoruko/20100316/1268721660]]より

トップ   編集 差分 履歴 添付 複製 名前変更 リロード   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS