全パッケージ クラス階層 このパッケージ 前項目 次項目 インデックス
クラス java.text.DateFormat
java.lang.Object
|
+----java.text.Format
|
+----java.text.DateFormat
- public abstract class DateFormat
- extends Format
- implements Cloneable
DateFormat は日付と時間を言語に独立した方法でフォーマットし解析する日付/時間フォーマット化サブクラスのための abstract クラスです。SimpleDateFormat などの日付/時間フォーマット化サブクラスは、フォーマット化(すなわち、ミリ秒 -> テキスト)、解析(テキスト -> ミリ秒)および標準化を可能にします。1970年1月1日グリニッジ標準時 24:00 以来標準ミリ秒である日付または時間をフォーマット/解析します。
DateFormat は、デフォルト値、与えられたロケール、多くのフォーマットスタイルに基づいて、デフォルトの日付/時間フォーマッタを取得する多くのクラスメソッドを提供します。フォーマットスタイルには FULL、LONG、MEDIUM および SHORT があります。 これらスタイルの詳細と使用例については、メソッドの説明を参照してください。
DateFormat はすべてのロケールの日付をフォーマットし解析する支援をします。コードは月数、週の日数、さらにはカレンダーフォーマット、 陰暦対陽暦などロケールの慣習とは完全に独立しています。
現在の Locale 用に日付をフォーマットするためには、次の static factory メソッドの 1 つを使用します:
myString = DateFormat.getDateInstance().format(myDate);
複数の数字をフォーマットする場合、システムがローカル言語と国の慣習に関する情報を複数回フェッチしなくて済むように、フォーマットを取得しそれを複数回使用することがより効率的です。
DateFormat df = DateFormat.getDateInstance();
for (int i = 0; i < a.length; ++i) {
output.println(df.format(myDate[i]) + "; ");
}
ある数値を異なるロケールに対してフォーマットする場合には、getDateInstance()の呼出しにそれを指定します。
DateFormat df = DateFormat.getDateInstance(Locale.FRANCE);
さらに、解析のために DateFormatを使用することができます。
myDate = df.parse(myString);
getDate を使用してその国の通常の日付フォーマットを取得します。他にも使用可能な static factory メソッドがあります。getTime を使用してその国の時間フォーマットを取得します。getDateTime を使用して日付と時間フォーマットを取得します。結果の長さを制御するためにこれら factory メソッドを異なるオプションで渡すことができます; SHORT から MEDIUM、LONG、FULL へ。正確な結果はロケールに依存しますが、一般的には、
- SHORTはすべて数値の場合です。たとえば、12.13.52 や 3:30pmなど。
- MEDIUMはそれより長い場合です。たとえば、Jan 12, 1952など。
- LONGはさらに長い場合です。たとえば、January 12, 1952 や 3:30:32pmなど。
- FULLは、ほとんど完全に指定する場合です。たとえば、Tuesday, April 12, 1952 AD や 3:30:42pm PSTなど。
必要であれば、フォーマットに時間帯を設定することもできます。フォーマットや解析をさらに制御したい場合(または、ユーザにそういう制御を与えたい場合)には、ファクトリメソッドから得た DateFormatを SimpleDateFormatにキャストする方法を試みることもできます。この方法はほとんどの国に有効ですが、そうでない場合に備えて、それを tryブロックに入れるようにしてください。
さらに、parseと formatメソッドの形式を ParsePositionと FieldPositionと一緒に使用すれば、次のことができます。
- 文字列のそれぞれの部分を段階的に解析する。
- 特定のフィールドを位置合せしたり、画面においてそのフィールドのどこが選択用なのかを見つける。
- 参照:
- Format, NumberFormat, SimpleDateFormat, Calendar, GregorianCalendar, TimeZone
-
AM_PM_FIELD
- AM_PMフィールドの位置合せのための便利な定数。
-
calendar
- 日付/時刻のフォーマットを行うための時刻フィールド値を生成するために DateFormatが使用するカレンダ。
-
DATE_FIELD
- DATEフィールドの位置合せのための便利な定数。
-
DAY_OF_WEEK_FIELD
- DAY_OF_WEEKフィールドの位置合せのための便利な定数。
-
DAY_OF_WEEK_IN_MONTH_FIELD
- DAY_OF_WEEK_IN_MONTHフィールドの位置合せのための便利な定数。
-
DAY_OF_YEAR_FIELD
- DAY_OF_YEARフィールドの位置合せのための便利な定数。
-
DEFAULT
- デフォルトスタイルパターンのための定数。
-
ERA_FIELD
- ERAフィールドの位置合せのための便利な定数。
-
FULL
- 全スタイルパターンのための定数。
-
HOUR0_FIELD
- HOURフィールドの位置合せのための便利な定数。
-
HOUR1_FIELD
- 1ベースのHOURフィールドの位置合せのための便利な定数。
-
HOUR_OF_DAY0_FIELD
- ゼロベースの HOUR_OF_DAYフィールドの位置合せのための便利な定数。
-
HOUR_OF_DAY1_FIELD
- 1ベースのHOUR_OF_DAYフィールドの位置合せのための便利な定数。
-
LONG
- 長いスタイルパターンのための定数。
-
MEDIUM
- 長さが中位のスタイルパターンのための定数。
-
MILLISECOND_FIELD
- MILLISECONDフィールドの位置合せのための便利な定数。
-
MINUTE_FIELD
- MINUTEフィールドの位置合せのための便利な定数。
-
MONTH_FIELD
- MONTHフィールドの位置合せのための便利な定数。
-
numberFormat
- 日付や時刻の数値をフォーマットするときに DateFormatが使用する数値フォーマッタ。
-
SECOND_FIELD
- SECONDフィールドの位置合せのための便利な定数。
-
SHORT
- 短いスタイルパターンのための定数。
-
TIMEZONE_FIELD
- TOIMEZONEフィールドの位置合せのための便利な定数。
-
WEEK_OF_MONTH_FIELD
- WEEK_OF_MONTHフィールドの位置合せのための便利な定数。
-
WEEK_OF_YEAR_FIELD
- WEEK_OF_YEARフィールドの位置合せのための便利な定数。
-
YEAR_FIELD
- YEARフィールドの位置合せのための便利な定数。
-
DateFormat()
-
-
clone()
- Cloneableをオーバーライドします。
-
equals(Object)
- equalsをオーバーライドします。
-
format(Date)
- Dateを日付/時刻文字列にフォーマットします。
-
format(Date, StringBuffer, FieldPosition)
- Dateを日付/時刻文字列にフォーマットします。
-
format(Object, StringBuffer, FieldPosition)
- FORMATをオーバーライドします。
-
getAvailableLocales()
- DateFormats が導入されているロケールセットを入手します。
-
getCalendar()
- この日付/時刻フォーマッタに対応するカレンダを入手します。
-
getDateInstance()
- デフォルトロケールに対しデフォルトのフォーマット化スタイルをもつ日付フォーマッタを入手します。
-
getDateInstance(int)
- デフォルトロケールに対し指定するフォーマット化スタイルをもつ日付フォーマッタを入手します。
-
getDateInstance(int, Locale)
- 指定するロケールに対し指定するフォーマット化スタイルをもつ日付フォーマッタを入手します。
-
getDateTimeInstance()
- デフォルトロケールに対しデフォルトのフォーマット化スタイルをもつ日付/時刻フォーマッタを入手します。
-
getDateTimeInstance(int, int)
- デフォルトロケールに対し指定する日付/時刻フォーマット化スタイルをもつ日付/時刻フォーマッタを入手します。
-
getDateTimeInstance(int, int, Locale)
- 指定するロケールに対し指定するフォーマット化スタイルをもつ日付/時刻フォーマッタを入手します。
-
getInstance()
- 日付と時刻の両方に対し SHORTスタイルを使用する日付/時刻フォーマッタを入手します。
-
getNumberFormat()
- 時刻のフォーマットと解析を行うためにこの数値フォーマッタを入手します。
-
getTimeInstance()
- デフォルトロケールに対しデフォルトのフォーマット化スタイルをもつ時刻フォーマッタを入手します。
-
getTimeInstance(int)
- デフォルトロケールに対し指定するフォーマット化スタイルをもつ時刻フォーマッタを入手します。
-
getTimeInstance(int, Locale)
- 指定するロケールに対し指定するフォーマット化スタイルをもつ時刻フォーマッタを入手します。
-
getTimeZone()
- 時間帯を入手します。
-
hashCode()
- hashCodeをオーバーライドします。
-
isLenient()
- 日付/時刻解析を厳密に行わないことを指定します。
-
parse(String)
- 日付/時刻文字列を解析します。
-
parse(String, ParsePosition)
- 指定する解析位置に従って日付/時刻文字列を解析します。
-
parseObject(String, ParsePosition)
- 日付/時刻文字列を Objectに解析します。
-
setCalendar(Calendar)
- この日付フォーマットで使用するカレンダを設定します。
-
setLenient(boolean)
- 日付/時刻解析を厳密に行うかどうかを指定します。
-
setNumberFormat(NumberFormat)
- 数値フォーマッタを設定します。
-
setTimeZone(TimeZone)
- この DateFormatオブジェクトのカレンダに対する時間帯を設定します。
calendar
protected Calendar calendar
- 日付/時刻フォーマットを行うための時刻フィールド値を生成するために DateFormatが使用するカレンダ。サブクラスは、この DateFormatに対応するロケールに対しカレンダをデフォルトのカレンダに初期化する必要がありあます。
numberFormat
protected NumberFormat numberFormat
- 日付と時刻の数値をフォーマットするために DateFormatが使用する数値フォーマッタ。サブクラスは、この DateFormatに対応するロケールに対しこれをデフォルトの数値フォーマタに初期化する必要がありあます。
ERA_FIELD
public static final int ERA_FIELD
- ERAフィールドの位置合せのための便利な定数。日付/時刻フォーマット機能の FieldPositionで使用します。
YEAR_FIELD
public static final int YEAR_FIELD
- YEARフィールドの位置合せのための便利な定数。日付/時刻フォーマット機能の FieldPositionで使用します。
MONTH_FIELD
public static final int MONTH_FIELD
- MONTHフィールドの位置合せのための便利な定数。日付/時刻フォーマット機能の FieldPositionで使用します。
DATE_FIELD
public static final int DATE_FIELD
- DATEフィールドの位置合せのための便利な定数。日付/時刻フォーマット機能の FieldPositionで使用します。
HOUR_OF_DAY1_FIELD
public static final int HOUR_OF_DAY1_FIELD
- 1ベースの HOUR_OF_DAYフィールドの位置合せのための便利な定数。日付/時刻フォーマット機能の FieldPositionで使用します。HOUR_OF_DAY1_FIELDは、1ベースの 24時間時計で使用します。たとえば、23:59 + 01:00は 24:59となります。
HOUR_OF_DAY0_FIELD
public static final int HOUR_OF_DAY0_FIELD
- 0ベースの HOUR_OF_DAYフィールドの位置合せのための便利な定数。日付/時刻フォーマット機能の FieldPositionで使用します。HOUR_OF_DAY0_FIELDは、0ベースの 24時間時計で使用します。たとえば、23:59 + 01:00は 00:59となります。
MINUTE_FIELD
public static final int MINUTE_FIELD
- MINUTEフィールドの位置合せのための便利な定数。日付/時刻フォーマット機能の FieldPositionで使用します。
SECOND_FIELD
public static final int SECOND_FIELD
- SECONDフィールドの位置合せのための便利な定数。日付/時刻フォーマット機能の FieldPositionで使用します。
MILLISECOND_FIELD
public static final int MILLISECOND_FIELD
- MILLISECONDフィールドの位置合せのための便利な定数。日付/時刻フォーマット機能の FieldPositionで使用します。
DAY_OF_WEEK_FIELD
public static final int DAY_OF_WEEK_FIELD
- DAY_OF_WEEKフィールドの位置合せのための便利な定数。日付/時刻フォーマット機能の FieldPositionで使用します。
DAY_OF_YEAR_FIELD
public static final int DAY_OF_YEAR_FIELD
- DAY_OF_YEARフィールドの位置合せのための便利な定数。日付/時刻フォーマット機能の FieldPositionで使用します。
DAY_OF_WEEK_IN_MONTH_FIELD
public static final int DAY_OF_WEEK_IN_MONTH_FIELD
- DAY_OF_WEEK_IN_MONTHフィールドの位置合せのための便利な定数。日付/時刻フォーマット機能の FieldPositionで使用します。
WEEK_OF_YEAR_FIELD
public static final int WEEK_OF_YEAR_FIELD
- WEEK_OF_YEARフィールドの位置合せのための便利な定数。日付/時刻フォーマット機能の FieldPositionで使用します。
WEEK_OF_MONTH_FIELD
public static final int WEEK_OF_MONTH_FIELD
- WEEK_OF_MONTHフィールドの位置合せのための便利な定数。日付/時刻フォーマット機能の FieldPositionで使用します。
AM_PM_FIELD
public static final int AM_PM_FIELD
- AM_PMフィールドの位置合せのための便利な定数。日付/時刻フォーマット機能の FieldPositionで使用します。
HOUR1_FIELD
public static final int HOUR1_FIELD
- 1ベースの HOURフィールドの位置合せのための便利な定数。日付/時刻フォーマット機能の FieldPositionで使用します。HOUR1_FIELDは、1ベースの 24時間時計で使用します。たとえば、11:30 PM + 1時間は 12:30 AMとなります。
HOUR0_FIELD
public static final int HOUR0_FIELD
- 0ベースの HOURフィールドの位置合せのための便利な定数。日付/時刻フォーマット機能の FieldPositionで使用します。HOUR0_FIELDは、0ベースの 24時間時計で使用します。たとえば、11:30 PM + 1時間は 00:30 AMとなります。
TIMEZONE_FIELD
public static final int TIMEZONE_FIELD
- TIMEZONEフィールドの位置合せのための便利な定数。日付/時刻フォーマット機能の FieldPositionで使用します。
FULL
public static final int FULL
- 全スタイルパターンのための定数。
LONG
public static final int LONG
- 長いスタイルパターンのための定数。
MEDIUM
public static final int MEDIUM
- 長さが中位のスタイルパターンのための定数。
SHORT
public static final int SHORT
- 短いスタイルパターンのための定数。
DEFAULT
public static final int DEFAULT
- デフォルトスタイルパターンのための定数。
DateFormat
protected DateFormat()
format
public final StringBuffer format(Object obj,
StringBuffer toAppendTo,
FieldPosition fieldPosition)
- Formatをオーバーライドします。時刻オブジェクトを時刻文字列にフォーマットします。時刻オブジェクトの例は、時刻値をミリ秒と Dateオブジェクトで表した場合です。
- パラメータ:
- obj - Numberか Date
- toAppendTo - 返される時刻文字列のための文字列バッファ
- status - フォーマットステータス。入力時: 希望する場合、配置フィールド。出力時: 配置フィールドのオフセット。
- 返り値:
- フォーマットされた時刻文字列
- オーバーライド:
- クラス Formatの format
- 参照:
- Format
format
public abstract StringBuffer format(Date date,
StringBuffer toAppendTo,
FieldPosition fieldPosition)
- Dateを日付/時刻文字列にフォーマットします。
- パラメータ:
- date - 日付/時刻文字列にフォーマットする Date
- toAppendTo - 返される時刻文字列のための文字列バッファ
- status - フォーマットステータス。入力時: 希望する場合、配置フィールド。出力時: 配置フィールドのオフセット。例えば、時間テキスト "1996.07.10 AD at 15:08:56 PDT" が与えられ、与えられた status.field が DateFormat.YEAR_FIELD である場合、オフセット status.beginIndex および status.getEndIndex はそれぞれ 0 と 4 にセットされます。同じ時間フィールドが 1 つのパターンに複数表示される場合、ステータスはその時間フィールドの最初の表示に対してセットされることに留意します。例えば、パターン "h a z (zzzz)" および配置フィールド DateFormat.TIMEZONE_FIELD を使用して Date を時間文字列 "1 PM PDT (Pacific Daylight Time)" にフォーマットすると、オフセット status.beginIndex および status.getEndIndex は時間ゾーンパターン文字 'z' の最初の表示に対してそれぞれ 5 と 8 にセットされます。
- 返り値:
- フォーマットされた日付/時刻文字列
format
public final String format(Date date)
- Dateを日付/時刻文字列にフォーマットします。
- パラメータ:
- date - 時刻文字列にフォーマットする時刻値
- 返り値:
- フォーマットされた時刻文字列
parse
public Date parse(String text) throws ParseException
- 日付/時刻文字列を解析する。
- 例外: ParseException
- その文字列が日付として解析できない場合
- 参照:
- parse
parse
public abstract Date parse(String text,
ParsePosition pos)
- 指定する解析位置に従って日付/時刻文字列を解析します。たとえば、時刻テキスト "07/10/96 4:5 PM, PDT"が、Date(837039928046)と同等な Dateに解析されます。
デフォルト値では、解析は厳密ではありません。入力が、このオブジェクトのフォーマットメソッドで使用される形式ではないが、日付として解析可能であれば、解析は正常に行われます。クライアントは、setLenient(false)を呼び出すことによって、このフォーマットを厳密に要求することができます。
- パラメータ:
- text - 解析する日付/時刻文字列
- pos - 入力では、解析を開始する位置。出力では、解析が終了した位置、または解析が失敗した場合には開始位置。
- 返り値:
- Date、または入力が解析できない場合はnull
- 参照:
- setLenient
parseObject
public Object parseObject(String source,
ParsePosition pos)
- 日付/時刻文字列を Objectに解析します。このコンビニエンスメソッドは、parse(String, ParsePosition)を呼び出すだけです。
- オーバーライド:
- クラス Formatの parseObject
- 参照:
- parse
getTimeInstance
public static final DateFormat getTimeInstance()
- デフォルトのロケールに対しデフォルトのフォーマット化スタイルをもつ時刻フォーマッタを入手します。
- 返り値:
- 時刻フォーマッタ
getTimeInstance
public static final DateFormat getTimeInstance(int style)
- デフォルトのロケールに対し指定のフォーマット化スタイルをもつ時刻フォーマッタを入手します。
- パラメータ:
- style - 指定するフォーマット化スタイル。たとえば、USロケールにおける "h:mm a"に対する SHORT
- 返り値:
- 時刻フォーマッタ
getTimeInstance
public static final DateFormat getTimeInstance(int style,
Locale aLocale)
- 指定するロケールに対し指定のフォーマット化スタイルをもつ時刻フォーマッタを入手します。
- パラメータ:
- style - 指定するフォーマット化スタイル。たとえば、USロケールにおける "h:mm a"に対する SHORT
- inLocale - 指定するロケール
- 返り値:
- 時刻フォーマッタ
getDateInstance
public static final DateFormat getDateInstance()
- デフォルトのロケールに対しデフォルトのフォーマット化スタイルをもつ日付フォーマッタを入手します。
- 返り値:
- 日付フォーマッタ
getDateInstance
public static final DateFormat getDateInstance(int style)
- デフォルトのロケールに対し指定のフォーマット化スタイルをもつ日付フォーマッタを入手します。
- パラメータ:
- style - 指定するフォーマット化スタイル。たとえば、USロケールにおける "M/d/yy"に対する SHORT
- 返り値:
- 日付フォーマッタ
getDateInstance
public static final DateFormat getDateInstance(int style,
Locale aLocale)
- 指定するロケールに対し指定のフォーマット化スタイルをもつ日付フォーマッタを入手します。
- パラメータ:
- style - 指定するフォーマット化スタイル。たとえば、USロケールにおける "M/d/yy"に対する SHORT
- inLocale - 指定するロケール
- 返り値:
- 日付フォーマッタ
getDateTimeInstance
public static final DateFormat getDateTimeInstance()
- デフォルトのロケールに対しデフォルトのフォーマット化スタイルをもつ日付/時刻フォーマッタを入手します。
- 返り値:
- 日付/時刻フォーマッタ
getDateTimeInstance
public static final DateFormat getDateTimeInstance(int dateStyle,
int timeStyle)
- デフォルトのロケールに対し指定の日付/時刻フォーマット化スタイルをもつ日付/時刻フォーマッタを入手します。
- パラメータ:
- dateStyle - 指定する日付フォーマット化スタイル。たとえば、USロケールにおける "M/d/yy"に対する SHORT
- timeStyle - 指定する時刻フォーマット化スタイル。たとえば、USロケールにおける ":h:mm a"に対する SHORT
- 返り値:
- 日付/時刻フォーマッタ
getDateTimeInstance
public static final DateFormat getDateTimeInstance(int dateStyle,
int timeStyle,
Locale aLocale)
- 指定するロケールに対し指定のフォーマット化スタイルをもつ日付/時刻フォーマッタを入手します。
- パラメータ:
- dateStyle - 指定する日付フォーマット化スタイル
- timeStyle - 指定する時刻フォーマット化スタイル
- inLocale - 指定するロケール
- 返り値:
- 日付/時刻フォーマッタ
getInstance
public static final DateFormat getInstance()
- 日付と時刻の両方に対し SHORTスタイルをもつ日付/時刻フォーマッタを入手します。
getAvailableLocales
public static Locale[] getAvailableLocales()
- DateFormatsが導入されているロケールセットを入手します。
- 返り値:
- DateFormatsが導入されているロケールセット
setCalendar
public void setCalendar(Calendar newCalendar)
- この日付フォーマットで使用するカレンダを設定します。最初は、指定またはデフォルトのロケールに対しデフォルトのカレンダが使用されます。
getCalendar
public Calendar getCalendar()
- この日付/時刻フォーマッタに対応するカレンダを入手します。
- 返り値:
- この日付/時刻フォーマッタに対応するカレンダ
setNumberFormat
public void setNumberFormat(NumberFormat newNumberFormat)
- 数値フォーマッタを設定します。
- パラメータ:
- newNumberFormat - 指定する新しい NumberFormat
getNumberFormat
public NumberFormat getNumberFormat()
- 時刻のフォーマットと解析のためにこの日付/時刻フォーマッタが使用する数値フォーマッタを入手します。
- 返り値:
- この日付/時刻フォーマッタが使用する数値フォーマッタ
setTimeZone
public void setTimeZone(TimeZone zone)
- この DateFormatオブジェクトのカレンダの時間帯を設定します。
- パラメータ:
- zone - 指定する新しい時間帯
getTimeZone
public TimeZone getTimeZone()
- 時間帯を入手します。
- 返り値:
- DateFormatのカレンダに対応する時間帯
setLenient
public void setLenient(boolean lenient)
- 日付/時刻解析を厳密に行うかどうかを指定します。厳密でない解析では、解析機能は、発見的な方法を使って、このオブジェクトのフォーマットと完全には一致しない入力を解釈することがあります。厳密な解析では、入力はこのオブジェクトのフォーマットと一致しなければなりません。
- 参照:
- setLenient
isLenient
public boolean isLenient()
- 日付/時刻の解析が厳密ではないことを指定します。
hashCode
public int hashCode()
- hashCodeをオーバーライドします。
- オーバーライド:
- クラス Objectの hashCode
equals
public boolean equals(Object obj)
- eqaulsをオーバーライドします。
- オーバーライド:
- クラス Objectの equals
clone
public Object clone()
- Cloneableをオーバーライドします。
- オーバーライド:
- クラス Formatの clone
全パッケージ クラス階層 このパッケージ 前項目 次項目 インデックス