ts.util
クラス DateTime

java.lang.Object
  上位を拡張 ts.util.DateTime
すべての実装されたインタフェース:
java.io.Serializable, java.lang.Cloneable, java.lang.Comparable<DateTime>

public class DateTime
extends java.lang.Object
implements java.io.Serializable, java.lang.Cloneable, java.lang.Comparable<DateTime>

日時を表現するクラス。
日付及び時刻に関する情報及び操作をまとめたクラスである。 デフォルトで使用する暦はグレゴリオ暦であり、そのカレンダオブジェクトとして GregorianCalendarオブジェクトを使用する。 ロケールやタイムゾーンは、特に指定しなかった場合はシステムでデフォルトのもの が使用される。
使用する暦やロケール、タイムゾーンを変更したい場合は、カレンダオブジェクトを 引数にとるコンストラクタを使用する。
日付の演算や不正チェックは、使用しているカレンダオブジェクトに任せている。
このクラスは、JDKの日付関連のクラスに比べて以下の機能が追加されている:

バージョン:
$Revision: 1.3 $, $Date: 2007/05/27 16:13:05 $
作成者:
佐藤隆之.
関連項目:
直列化された形式

フィールドの概要
static int APRIL
          4月を表す定数。
static int AUGUST
          8月を表す定数。
static int DECEMBER
          12月を表す定数。
static int FEBRUARY
          2月を表す定数。
static int FRIDAY
          金曜日を表す定数。
static int JANUARY
          1月を表す定数。
static int JULY
          7月を表す定数。
static int JUNE
          6月を表す定数。
static int MARCH
          3月を表す定数。
static int MAY
          5月を表す定数。
static int MONDAY
          月曜日を表す定数。
static int NOVEMBER
          11月を表す定数。
static int OCTOBER
          10月を表す定数。
static int SATURDAY
          土曜日を表す定数。
static int SEPTEMBER
          9月を表す定数。
static int SUNDAY
          日曜日を表す定数。
static int THURSDAY
          木曜日を表す定数。
static int TUESDAY
          火曜日を表す定数。
static int WEDNESDAY
          水曜日を表す定数。
 
コンストラクタの概要
DateTime()
          デフォルトコンストラクタ。
DateTime(java.util.Calendar calendar)
          カレンダオブジェクトを引数にとるコンストラクタ。
DateTime(java.util.Date date)
          JDKの日付オブジェクトを引数にとるコンストラクタ。
DateTime(DateTime datetime)
          コピーコンストラクタ。
DateTime(int year, int month, int day)
          年月日を引数にとるコンストラクタ。
DateTime(int year, int month, int day, int hour, int min, int sec)
          年月日時分秒を引数にとるコンストラクタ。
DateTime(int era, int year, int month, int day, int hour, int min, int sec)
          元号を示すコードと年月日時分秒を引数にとるコンストラクタ。
DateTime(long datetime)
          ミリ秒単位の日時を引数にとるコンストラクタ。
 
メソッドの概要
 void addDay(int days)
          指定されている日付に指定された日数を加算する。
 void addHour(int hours)
          指定されている日付の時刻に指定された時間を加算する。
 void addMinute(int minutes)
          指定されている日付の時刻に指定された分を加算する。
 void addMonth(int months)
          指定されている日付に指定された月数を加算する。
 void addSecond(int seconds)
          設定されている日付の時刻に指定された秒を加算する。
 void addYear(int years)
          設定されている日付に指定された年数を加算する。
 void ceilMinute(int minute)
          分を指定された値で切り上げる。
 int compareTo(DateTime dttm)
          指定されたオブジェクトとの大小を比較する。
 boolean equals(java.lang.Object obj)
          指定されたオブジェクトと内容が等しいかどうかを比較する。
protected  boolean equalsCalendar(DateTime dttm)
          指定された日時オブジェクトとカレンダが等しいかどうかを判定する。
 void floorMinute(int minute)
          分を指定された値で切り下げる。
 java.util.Calendar getCalendar()
          日時をCalendarオブジェクトとして取得する。
 java.util.Date getDate()
          日時をDateオブジェクトとして取得する。
 long getDateTimeMillis()
          日時をミリ秒単位で取得する。
 int getDay()
          日を取得する。
 int getEra()
          元号を示すint値を取得する。
 int getHour()
          時を取得する。
 int getMinute()
          分を取得する。
 int getMonth()
          月を取得する。
 int getSecond()
          秒を取得する。
 java.sql.Date getSQLDate()
          日時をDateオブジェクトとして取得する。
 java.sql.Time getSQLTime()
          日時をTimeオブジェクトとして取得する。
 java.sql.Timestamp getSQLTimestamp()
          日時をTimestampオブジェクトとして取得する。
 java.util.TimeZone getTimeZone()
          タイムゾーンを取得する。
 int getWeek()
          曜日を表すコードを取得する。
 int getYear()
          年を取得する。
 int hashCode()
          このオブジェクトのハッシュコードを取得する。
static DateTime parseDateTime(java.lang.String str)
          引数に指定された文字列を日時に変換する。
 void setDateTime(java.util.Date date)
          日時を日付オブジェクトで設定する。
 void setDateTime(int year, int month, int day)
          日時を年月日で設定する。
 void setDateTime(int y, int m, int d, int hh, int mm, int ss)
          日時を年月日時分秒で設定する。
 void setDateTime(int e, int y, int m, int d, int hh, int mm, int ss)
          日時を元号及び年月日時分秒で設定する。
 void setDateTime(long millis)
          日時をミリ単位で設定する。
 void setEndDayOfMonth()
          設定されている日付を、その月の終了日時に設定する。
 void setEndDayOfWeek()
          設定されている日付を、その週の終了日時(土曜日)に設定する。
 void setEndTimeOfDay()
          設定されている日付の時刻を、終了時刻(23:59:59.999)に設定する。
 void setStartDayOfMonth()
          設定されている日付を、その月の開始日時に設定する。
 void setStartDayOfWeek()
          設定されている日付をその週の開始日時(日曜日)に設定する。
 void setStartTimeOfDay()
          設定されている日付の時刻を、開始時刻(00:00:00)に設定する。
 java.lang.String toString()
          日時を文字列に変換して出力する。
static java.lang.String toString(DateTime dttm)
          引数に指定された日時を文字列に変換する。
 
クラス java.lang.Object から継承されたメソッド
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
 

フィールドの詳細

JANUARY

public static final int JANUARY
1月を表す定数。

関連項目:
定数フィールド値

FEBRUARY

public static final int FEBRUARY
2月を表す定数。

関連項目:
定数フィールド値

MARCH

public static final int MARCH
3月を表す定数。

関連項目:
定数フィールド値

APRIL

public static final int APRIL
4月を表す定数。

関連項目:
定数フィールド値

MAY

public static final int MAY
5月を表す定数。

関連項目:
定数フィールド値

JUNE

public static final int JUNE
6月を表す定数。

関連項目:
定数フィールド値

JULY

public static final int JULY
7月を表す定数。

関連項目:
定数フィールド値

AUGUST

public static final int AUGUST
8月を表す定数。

関連項目:
定数フィールド値

SEPTEMBER

public static final int SEPTEMBER
9月を表す定数。

関連項目:
定数フィールド値

OCTOBER

public static final int OCTOBER
10月を表す定数。

関連項目:
定数フィールド値

NOVEMBER

public static final int NOVEMBER
11月を表す定数。

関連項目:
定数フィールド値

DECEMBER

public static final int DECEMBER
12月を表す定数。

関連項目:
定数フィールド値

SUNDAY

public static final int SUNDAY
日曜日を表す定数。

関連項目:
定数フィールド値

MONDAY

public static final int MONDAY
月曜日を表す定数。

関連項目:
定数フィールド値

TUESDAY

public static final int TUESDAY
火曜日を表す定数。

関連項目:
定数フィールド値

WEDNESDAY

public static final int WEDNESDAY
水曜日を表す定数。

関連項目:
定数フィールド値

THURSDAY

public static final int THURSDAY
木曜日を表す定数。

関連項目:
定数フィールド値

FRIDAY

public static final int FRIDAY
金曜日を表す定数。

関連項目:
定数フィールド値

SATURDAY

public static final int SATURDAY
土曜日を表す定数。

関連項目:
定数フィールド値
コンストラクタの詳細

DateTime

public DateTime()
デフォルトコンストラクタ。
現在の日時を保持するインスタンスを構築する。


DateTime

public DateTime(DateTime datetime)
コピーコンストラクタ。
引数と同じ日時及びカレンダを持つインスタンスを構築する。

例外:
java.lang.AssertionError - 引数がヌルの場合(デバッグモードのみ)。

DateTime

public DateTime(long datetime)
ミリ秒単位の日時を引数にとるコンストラクタ。
1970年1月1日0時0分0秒をゼロとするミリ秒単位のlong値を設定 する。

パラメータ:
datetime - ミリ秒単位の日時。

DateTime

public DateTime(java.util.Date date)
JDKの日付オブジェクトを引数にとるコンストラクタ。

パラメータ:
date - Dateオブジェクト。
例外:
java.lang.AssertionError - 引数がヌルの場合(デバッグモードのみ)。

DateTime

public DateTime(int year,
                int month,
                int day)
         throws java.lang.IllegalArgumentException
年月日を引数にとるコンストラクタ。
時分秒には、0時0分0秒を設定する。
指定された年月日が不正な場合は例外をスローする。

パラメータ:
year - 年。
month - 月(1〜12)。
day - 日(1〜31)。
例外:
java.lang.IllegalArgumentException - 指定された年月日が不正な場合。

DateTime

public DateTime(int year,
                int month,
                int day,
                int hour,
                int min,
                int sec)
         throws java.lang.IllegalArgumentException
年月日時分秒を引数にとるコンストラクタ。
指定された年月日時分秒が不正な場合は例外をスローする。

パラメータ:
year - 年。
month - 月(1〜12)。
day - 日(1〜31)。
hour - 時(0〜23)。
min - 分(0〜59)。
sec - 秒(0〜59)。
例外:
java.lang.IllegalArgumentException - 指定された年月日が不正な場合。

DateTime

public DateTime(int era,
                int year,
                int month,
                int day,
                int hour,
                int min,
                int sec)
         throws java.lang.IllegalArgumentException
元号を示すコードと年月日時分秒を引数にとるコンストラクタ。
指定された元号又は年月日時分秒が不正な場合は例外をスローする。

パラメータ:
era - 元号を示すコード。
year - 年。
month - 月(1〜12)。
day - 日(1〜31)。
hour - 時(0〜23)。
min - 分(0〜59)。
sec - 秒(0〜59)。
例外:
java.lang.IllegalArgumentException - 指定された年月日が不正な場合。

DateTime

public DateTime(java.util.Calendar calendar)
カレンダオブジェクトを引数にとるコンストラクタ。
使用したい暦に対応するCalendarオブジェクトを 設定する。

パラメータ:
calendar - Calendarオブジェクト。
例外:
java.lang.AssertionError - 引数がヌルの場合(デバッグモードのみ)。
メソッドの詳細

getDateTimeMillis

public long getDateTimeMillis()
日時をミリ秒単位で取得する。

戻り値:
ミリ秒単位の日時。

getDate

public java.util.Date getDate()
日時をDateオブジェクトとして取得する。

戻り値:
Dateオブジェクト。

getSQLDate

public java.sql.Date getSQLDate()
日時をDateオブジェクトとして取得する。

戻り値:
Dateオブジェクト。

getSQLTime

public java.sql.Time getSQLTime()
日時をTimeオブジェクトとして取得する。

戻り値:
Timeオブジェクト。

getSQLTimestamp

public java.sql.Timestamp getSQLTimestamp()
日時をTimestampオブジェクトとして取得する。

戻り値:
Timestampオブジェクト。

getCalendar

public java.util.Calendar getCalendar()
日時をCalendarオブジェクトとして取得する。

戻り値:
Calendarオブジェクト。

getTimeZone

public java.util.TimeZone getTimeZone()
タイムゾーンを取得する。

戻り値:
タイムゾーンを取得する。

getEra

public int getEra()
元号を示すint値を取得する。

戻り値:
元号を示すint値。

getYear

public int getYear()
年を取得する。

戻り値:
年。

getMonth

public int getMonth()
月を取得する。

戻り値:
月(1〜12)。

getDay

public int getDay()
日を取得する。

戻り値:
日(1〜31)。

getWeek

public int getWeek()
曜日を表すコードを取得する。
コードは、日曜日から順に1〜7の値をとる。

戻り値:
曜日を表すコード。

getHour

public int getHour()
時を取得する。

戻り値:
時(0〜23)。

getMinute

public int getMinute()
分を取得する。

戻り値:
分(0〜59)。

getSecond

public int getSecond()
秒を取得する。

戻り値:
秒(0〜59)。

setDateTime

public void setDateTime(long millis)
日時をミリ単位で設定する。

パラメータ:
millis - ミリ秒単位の日時。

setDateTime

public void setDateTime(java.util.Date date)
日時を日付オブジェクトで設定する。

パラメータ:
date - Dateオブジェクト。
例外:
java.lang.AssertionError - 引数がヌルの場合(デバッグモードのみ)。

setDateTime

public void setDateTime(int year,
                        int month,
                        int day)
                 throws java.lang.IllegalArgumentException
日時を年月日で設定する。
時分秒にはそれぞれゼロが設定される。

パラメータ:
year - 年。
month - 月(1〜12)。
day - 日(1〜31)。
例外:
java.lang.IllegalArgumentException - 指定された年月日が不正な場合。

setDateTime

public void setDateTime(int y,
                        int m,
                        int d,
                        int hh,
                        int mm,
                        int ss)
                 throws java.lang.IllegalArgumentException
日時を年月日時分秒で設定する。

パラメータ:
y - 年。
m - 月(1〜12)。
d - 日(1〜31)。
hh - 時(0〜23)。
mm - 分(0〜59)。
ss - 秒(0〜59)。
例外:
java.lang.IllegalArgumentException - 指定された年月日時分秒が不正な場合。

setDateTime

public void setDateTime(int e,
                        int y,
                        int m,
                        int d,
                        int hh,
                        int mm,
                        int ss)
                 throws java.lang.IllegalArgumentException
日時を元号及び年月日時分秒で設定する。

パラメータ:
e - 元号を表すコード。
y - 年。
m - 月(1〜12)。
d - 日(1〜31)。
hh - 時(0〜23)。
mm - 分(0〜59)。
ss - 秒(0〜59)。
例外:
java.lang.IllegalArgumentException - 指定された元号や年月日時分秒が不正な場合。

setStartTimeOfDay

public void setStartTimeOfDay()
設定されている日付の時刻を、開始時刻(00:00:00)に設定する。


setEndTimeOfDay

public void setEndTimeOfDay()
設定されている日付の時刻を、終了時刻(23:59:59.999)に設定する。


setStartDayOfMonth

public void setStartDayOfMonth()
設定されている日付を、その月の開始日時に設定する。


setEndDayOfMonth

public void setEndDayOfMonth()
設定されている日付を、その月の終了日時に設定する。


setStartDayOfWeek

public void setStartDayOfWeek()
設定されている日付をその週の開始日時(日曜日)に設定する。


setEndDayOfWeek

public void setEndDayOfWeek()
設定されている日付を、その週の終了日時(土曜日)に設定する。


floorMinute

public void floorMinute(int minute)
分を指定された値で切り下げる。
引数が0の場合は、切り下げを行わない。

パラメータ:
minute - 切り下げの単位となる値。
例外:
java.lang.AssertionError - 引数が負の場合(デバッグモードのみ)。

ceilMinute

public void ceilMinute(int minute)
分を指定された値で切り上げる。
引数が0の場合は、切り上げを行わない。

パラメータ:
minute - 切り上げの単位となる値。

addYear

public void addYear(int years)
設定されている日付に指定された年数を加算する。

パラメータ:
years - 加算する年数。

addMonth

public void addMonth(int months)
指定されている日付に指定された月数を加算する。

パラメータ:
months - 加算する月数。

addDay

public void addDay(int days)
指定されている日付に指定された日数を加算する。

パラメータ:
days - 加算する日数。

addHour

public void addHour(int hours)
指定されている日付の時刻に指定された時間を加算する。

パラメータ:
hours - 加算する時間。

addMinute

public void addMinute(int minutes)
指定されている日付の時刻に指定された分を加算する。

パラメータ:
minutes - 加算する分。

addSecond

public void addSecond(int seconds)
設定されている日付の時刻に指定された秒を加算する。

パラメータ:
seconds - 加算する秒。

hashCode

public int hashCode()
このオブジェクトのハッシュコードを取得する。

オーバーライド:
クラス java.lang.Object 内の hashCode
戻り値:
ハッシュコード。

equalsCalendar

protected boolean equalsCalendar(DateTime dttm)
指定された日時オブジェクトとカレンダが等しいかどうかを判定する。

パラメータ:
dttm - 比較する日時オブジェクト。
戻り値:
等しければtrueを返す。
例外:
java.lang.AssertionError - 引数がヌルの場合(デバッグモードのみ)。

equals

public boolean equals(java.lang.Object obj)
指定されたオブジェクトと内容が等しいかどうかを比較する。
引数がDateTimeオブジェクトの場合は、 このオブジェクトの日時と指定されたオブジェクトの日時が等しいかどうかを 比較する。
引数がヌルの場合またはDateTimeオブジェクト ではない場合は常にfalseを返す。

オーバーライド:
クラス java.lang.Object 内の equals
パラメータ:
obj - 比較するオブジェクト。
戻り値:
このオブジェクトと引数のオブジェクトの内容が等しい場合は trueを、そうでなければfalseを返す。

compareTo

public int compareTo(DateTime dttm)
              throws java.lang.NullPointerException
指定されたオブジェクトとの大小を比較する。
このオブジェクトの日時と指定されたオブジェクトの日付を比較して、 このオブジェクト日時の方が早い場合は負の整数値を、遅い場合は正の整数値を、 等しい場合はゼロを返す。

定義:
インタフェース java.lang.Comparable<DateTime> 内の compareTo
パラメータ:
dttm - 比較する日時オブジェクト。
戻り値:
このオブジェクトの日時の方が早い場合は負の整数値を、遅い場合は正の 整数値を、等しい場合はゼロを返す。
例外:
java.lang.NullPointerException - 引数がヌルの場合。
java.lang.IllegalArgumentException - このオブジェクトと引数の日時オブジェクトの カレンダが異なる場合。

toString

public java.lang.String toString()
日時を文字列に変換して出力する。
日時は、SimpleDateFormatを使用して、 yyyy-MM-dd HH:mm:ssの形式で出力される。

オーバーライド:
クラス java.lang.Object 内の toString
戻り値:
日時を表す文字列。
関連項目:
toString(DateTime dttm)

toString

public static java.lang.String toString(DateTime dttm)
引数に指定された日時を文字列に変換する。
日時は、SimpleDateFormatを使用して、 yyyy-MM-dd HH:mm:ssの形式で出力される。 元号が今と異なる場合には、"yyyy-MM-dd

パラメータ:
dttm - 日時オブジェクト。
戻り値:
日時を表す文字列。
例外:
java.lang.AssertionError - 引数がヌルの場合(デバッグモードのみ)。
関連項目:
SimpleDateFormat

parseDateTime

public static DateTime parseDateTime(java.lang.String str)
                              throws java.text.ParseException
引数に指定された文字列を日時に変換する。
文字列の解釈には、SimpleDateFormat を使用する。 文字列が日時として解釈されるためには、その書式が"yyyy-MM-dd""yyyy-MM-dd HH:mm:ss""yyyy-MM-dd HH:mm:ss (G)" のいずれかに従っている必要がある。
引数の文字列の書式が不正な場合は、例外をスローする。

パラメータ:
str - 日時を表す文字列。
戻り値:
日時オブジェクト。
例外:
java.text.ParseException - 引数文字列の書式が不正な場合。
java.lang.AssertionError - 引数がヌルの場合(デバッグモードのみ)。
関連項目:
SimpleDateFormat


Copyright (C) SATOH Takayuki All Rights Reserved.