いくつか用語の定義は、ISO 8601、および JIS X 0301 に基づきます。
暦日付は、暦年、暦月、および暦月の中の序数によって 指定される特定の日の日付です。
つまり、ごく当たり前の年月日による日付です。
年間通算日 (年日付) は、暦年、および暦年の中の序数によって指定される 特定の日の日付です。
暦週日付は、暦週と暦年中の序数による日付です。
暦週は、暦年中の序数によって指定される特定の7日の期間であり、月曜から 始まります。その年の第1暦週は、最初の木曜日を含む週とします。これは、1 月4日を含む週と同じです。
ユリウス日は紀元前4713年1月1日 (ユリウス暦) 正午 (グリニッジ平均時) を 暦元とした通日 (経過日数) です。
この文書で、天文学的なユリウス日とは、本来のユリウス日と同じものです。 また、年代学的なユリウス日とは、地方時における零時を一日の始まりとする 流儀です。
この文書で、単に「ユリウス日」といった場合、それは本来のユリウス日でな く、「年代学的なユリウス日」を意味しています。
修正ユリウス日は西暦1858年11月17日 (グレゴリオ暦) 正子/零時 (協定世界時) を 暦元とした通日 (経過日数) です。
この文書で、天文学的な修正ユリウス日とは、本来の修正ユリウス日と同じも のです。また、年代学的な修正ユリウス日とは、地方時における零時を一日の 始まりとする流儀です。
この文書で、単に「修正ユリウス日」といった場合、それは本来の修正ユリウ ス日でなく、「年代学的な修正ユリウス日」を意味しています。
Object
Comparable
暦日付に相当する日付オブジェクトを生成します。
このクラスでは、紀元前の年を天文学の流儀で勘定します。 1年の前は零年、零年の前は-1年、のようにします。 月、および月の日は負、 または正の数でなければなりません (負のときは最後からの序数)。 零であってはなりません。
最後の引数は、グレゴリオ暦をつかい始めた日をあらわすユリウス日です。 グレゴリオ暦の指定として Date::GREGORIAN、 ユリウス暦の指定として Date::JULIAN を与えることもできます。 省略した場合は、Date::ITALY (1582年10月15日) になります。
jd も参照してください。
暦週日付に相当する日付オブジェクトを生成します。
週、および週の日 (曜日) は負、 または正の数でなければなりません(負のときは最後からの序数)。 零であってはなりません。
このメソッドに改暦前の日付を与えることはできません。
jd、および new も参照してください。
ユリウス日に相当する日付オブジェクトを生成します。
このクラスのいくつかの重要なメソッドで、 負のユリウス日は保証されません。
new も参照してください。
年間通算日 (年日付) に相当する日付オブジェクトを生成します。
年の日は負、 または正の数でなければなりません (負のときは最後からの序数)。 零であってはなりません。
jd、および new も参照してください。
与えられた日付表現を解析し、 その情報に基づいて日付オブジェクトを生成します。
省略可能なふたつ目の引数が真で、年が "00" から "99" の範囲であれば、 年の下2桁表現であるとみなしこれを補います。 なお、省略した場合は、偽とみなします。
_parse も利用できます。 このメソッドは parse と似ていますが、日付オブジェクトを生成せずに、 見いだした要素をハッシュで返します。
与えられた雛型で日付表現を解析し、 その情報に基づいて日付オブジェクトを生成します。
たとえば、つぎのような書式を受けつけます:
%Y-%m-%d %Y-%j %G-W%V-%u %s %Q
_strptime も利用できます。 このメソッドは strptime と似ていますが、日付オブジェクト生成せずに、 見いだした要素をハッシュで返します。
strptime(3)、および strftime も参照してください。
正しい暦日付であれば真、そうでないなら偽を返します。
jd、および civil も参照してください。
正しい暦週日付であれば真、そうでないなら偽を返します。
jd、および commercial も参照してください。
真を返します。
対称性のため用意されていますが、実際的に意味はありません。
jd も参照してください。
正しい年間通算日 (年日付) であれば真、そうでないなら偽を返します。
jd、および ordinal も参照してください。
step(min, -1){|date| ...}
と等価です。
new_start(Date::ENGLAND)
と等価です。
new_start(Date::GREGORIAN)
と等価です。
new_start(Date::ITALY)
と等価です。
ユリウス日を返します。 時刻を含みません。
ajd も利用できます。 このメソッドは jd と似ていますが、天文学的なユリウス日を返します。 時刻を含みます。
new_start(Date::JULIAN)
と等価です。
修正ユリウス日を返します。 時刻の情報を含みません。
amjd も利用できます。 このメソッドは mjd と似ていますが、天文学的な修正ユリウス日を返します。 時刻を含みます。
self を複製して、その改暦日を設定しなおします。 引数を省略した場合は、Date::ITALY (1582年10月15日) になります。
new も参照してください。
改暦日をあらわすユリウス日を返します。
new も参照してください。
与えられた雛型で日付を書式づけます。 つぎの変換仕様をあつかいます:
%A, %a, %B, %b, %C, %c, %D, %d, %e, %F, %G, %g, %H, %h, %I, %j, %k, %L, %l, %M, %m, %N, %n, %P, %p, %Q, %R, %r, %S, %s, %T, %t, %U, %u, %V, %v, %W, %w, %X, %x, %Y, %y, %Z, %z, %%, %+
strftime(3)、および strptime も参照してください。
step(max, 1){|date| ...}
と等価です。
Date
self を複製して、その時差を設定しなおします。 引数を省略した場合は、零 (協定世界時) になります。
new も参照してください。
「国民の祝日に関する法律」による休日、 もしくは、いくつかの特別な休日であれば真を返します。
このメソッドは、第八次改正 「国民の祝日に関する法律の一部を改正する法律」 (平成17年5月20日号外法律43号)に対応済みです。
春分日、秋分日は前年の2月はじめの官報に掲載されるものが正しいのですが、 ここでは計算で求めています。 つまり将来については間違えることもあるかもしれません。 なお、平成21年 (2009) 分までは官報等により確認済みです。
与えられた日付表現を解析し、見いだした要素を 配列 (年、月、日、時、分、秒、タイムゾーン、曜日) で返します。
省略できる最後の引数が真で、年が "00" から "99" の範囲であれば、 年の下2桁表現であるとみなしこれを補います。 なお、省略した場合は、偽とみなします。
parsedate はいろいろな書式をあつかえます。 たとえば、つぎのような表現を受けつけます:
Sat Saturday 1999-08-28 21:45:09 09:45:09 PM 1999-08-28T21:45:09+0900 19990828 214509 H11.08.28T21:45:09Z Sat Aug 28 21:45:09 1999 Sat Aug 28 21:45:09 JST 1999 Sat, 28 Aug 1999 21:45:09 -0400 Saturday, 28-Aug-99 21:45:09 GMT 08/28/1999 1999/08/28
Date::parse も参照してください。