全パッケージ  クラス階層  このパッケージ  前項目  次項目  インデックス

クラス 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 へ。正確な結果はロケールに依存しますが、一般的には、

必要であれば、フォーマットに時間帯を設定することもできます。フォーマットや解析をさらに制御したい場合(または、ユーザにそういう制御を与えたい場合)には、ファクトリメソッドから得た DateFormatを SimpleDateFormatにキャストする方法を試みることもできます。この方法はほとんどの国に有効ですが、そうでない場合に備えて、それを tryブロックに入れるようにしてください。

さらに、parseと formatメソッドの形式を ParsePositionと FieldPositionと一緒に使用すれば、次のことができます。

参照:
Format, NumberFormat, SimpleDateFormat, Calendar, GregorianCalendar, TimeZone

Variable Index

 o AM_PM_FIELD
AM_PMフィールドの位置合せのための便利な定数。
 o calendar
日付/時刻のフォーマットを行うための時刻フィールド値を生成するために DateFormatが使用するカレンダ。
 o DATE_FIELD
DATEフィールドの位置合せのための便利な定数。
 o DAY_OF_WEEK_FIELD
DAY_OF_WEEKフィールドの位置合せのための便利な定数。
 o DAY_OF_WEEK_IN_MONTH_FIELD
DAY_OF_WEEK_IN_MONTHフィールドの位置合せのための便利な定数。
 o DAY_OF_YEAR_FIELD
DAY_OF_YEARフィールドの位置合せのための便利な定数。
 o DEFAULT
デフォルトスタイルパターンのための定数。
 o ERA_FIELD
ERAフィールドの位置合せのための便利な定数。
 o FULL
全スタイルパターンのための定数。
 o HOUR0_FIELD
HOURフィールドの位置合せのための便利な定数。
 o HOUR1_FIELD
1ベースのHOURフィールドの位置合せのための便利な定数。
 o HOUR_OF_DAY0_FIELD
ゼロベースの HOUR_OF_DAYフィールドの位置合せのための便利な定数。
 o HOUR_OF_DAY1_FIELD
1ベースのHOUR_OF_DAYフィールドの位置合せのための便利な定数。
 o LONG
長いスタイルパターンのための定数。
 o MEDIUM
長さが中位のスタイルパターンのための定数。
 o MILLISECOND_FIELD
MILLISECONDフィールドの位置合せのための便利な定数。
 o MINUTE_FIELD
MINUTEフィールドの位置合せのための便利な定数。
 o MONTH_FIELD
MONTHフィールドの位置合せのための便利な定数。
 o numberFormat
日付や時刻の数値をフォーマットするときに DateFormatが使用する数値フォーマッタ。
 o SECOND_FIELD
SECONDフィールドの位置合せのための便利な定数。
 o SHORT
短いスタイルパターンのための定数。
 o TIMEZONE_FIELD
TOIMEZONEフィールドの位置合せのための便利な定数。
 o WEEK_OF_MONTH_FIELD
WEEK_OF_MONTHフィールドの位置合せのための便利な定数。
 o WEEK_OF_YEAR_FIELD
WEEK_OF_YEARフィールドの位置合せのための便利な定数。
 o YEAR_FIELD
YEARフィールドの位置合せのための便利な定数。

Constructor Index

 o DateFormat()

Method Index

 o clone()
Cloneableをオーバーライドします。
 o equals(Object)
equalsをオーバーライドします。
 o format(Date)
Dateを日付/時刻文字列にフォーマットします。
 o format(Date, StringBuffer, FieldPosition)
Dateを日付/時刻文字列にフォーマットします。
 o format(Object, StringBuffer, FieldPosition)
FORMATをオーバーライドします。
 o getAvailableLocales()
DateFormats が導入されているロケールセットを入手します。
 o getCalendar()
この日付/時刻フォーマッタに対応するカレンダを入手します。
 o getDateInstance()
デフォルトロケールに対しデフォルトのフォーマット化スタイルをもつ日付フォーマッタを入手します。
 o getDateInstance(int)
デフォルトロケールに対し指定するフォーマット化スタイルをもつ日付フォーマッタを入手します。
 o getDateInstance(int, Locale)
指定するロケールに対し指定するフォーマット化スタイルをもつ日付フォーマッタを入手します。
 o getDateTimeInstance()
デフォルトロケールに対しデフォルトのフォーマット化スタイルをもつ日付/時刻フォーマッタを入手します。
 o getDateTimeInstance(int, int)
デフォルトロケールに対し指定する日付/時刻フォーマット化スタイルをもつ日付/時刻フォーマッタを入手します。
 o getDateTimeInstance(int, int, Locale)
指定するロケールに対し指定するフォーマット化スタイルをもつ日付/時刻フォーマッタを入手します。
 o getInstance()
日付と時刻の両方に対し SHORTスタイルを使用する日付/時刻フォーマッタを入手します。
 o getNumberFormat()
時刻のフォーマットと解析を行うためにこの数値フォーマッタを入手します。
 o getTimeInstance()
デフォルトロケールに対しデフォルトのフォーマット化スタイルをもつ時刻フォーマッタを入手します。
 o getTimeInstance(int)
デフォルトロケールに対し指定するフォーマット化スタイルをもつ時刻フォーマッタを入手します。
 o getTimeInstance(int, Locale)
指定するロケールに対し指定するフォーマット化スタイルをもつ時刻フォーマッタを入手します。
 o getTimeZone()
時間帯を入手します。
 o hashCode()
hashCodeをオーバーライドします。
 o isLenient()
日付/時刻解析を厳密に行わないことを指定します。
 o parse(String)
日付/時刻文字列を解析します。
 o parse(String, ParsePosition)
指定する解析位置に従って日付/時刻文字列を解析します。
 o parseObject(String, ParsePosition)
日付/時刻文字列を Objectに解析します。
 o setCalendar(Calendar)
この日付フォーマットで使用するカレンダを設定します。
 o setLenient(boolean)
日付/時刻解析を厳密に行うかどうかを指定します。
 o setNumberFormat(NumberFormat)
数値フォーマッタを設定します。
 o setTimeZone(TimeZone)
この DateFormatオブジェクトのカレンダに対する時間帯を設定します。

Variables

 o calendar
  protected Calendar calendar
日付/時刻フォーマットを行うための時刻フィールド値を生成するために DateFormatが使用するカレンダ。サブクラスは、この DateFormatに対応するロケールに対しカレンダをデフォルトのカレンダに初期化する必要がありあます。

 o numberFormat
  protected NumberFormat numberFormat
日付と時刻の数値をフォーマットするために DateFormatが使用する数値フォーマッタ。サブクラスは、この DateFormatに対応するロケールに対しこれをデフォルトの数値フォーマタに初期化する必要がありあます。

 o ERA_FIELD
  public static final int ERA_FIELD
ERAフィールドの位置合せのための便利な定数。日付/時刻フォーマット機能の FieldPositionで使用します。
 o YEAR_FIELD
  public static final int YEAR_FIELD
YEARフィールドの位置合せのための便利な定数。日付/時刻フォーマット機能の FieldPositionで使用します。

 o MONTH_FIELD
  public static final int MONTH_FIELD
MONTHフィールドの位置合せのための便利な定数。日付/時刻フォーマット機能の FieldPositionで使用します。

 o DATE_FIELD
  public static final int DATE_FIELD
DATEフィールドの位置合せのための便利な定数。日付/時刻フォーマット機能の FieldPositionで使用します。

 o 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となります。

 o 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となります。

 o MINUTE_FIELD
  public static final int MINUTE_FIELD
MINUTEフィールドの位置合せのための便利な定数。日付/時刻フォーマット機能の FieldPositionで使用します。

 o SECOND_FIELD
  public static final int SECOND_FIELD
SECONDフィールドの位置合せのための便利な定数。日付/時刻フォーマット機能の FieldPositionで使用します。

 o MILLISECOND_FIELD
  public static final int MILLISECOND_FIELD
MILLISECONDフィールドの位置合せのための便利な定数。日付/時刻フォーマット機能の FieldPositionで使用します。

 o DAY_OF_WEEK_FIELD
  public static final int DAY_OF_WEEK_FIELD
DAY_OF_WEEKフィールドの位置合せのための便利な定数。日付/時刻フォーマット機能の FieldPositionで使用します。

 o DAY_OF_YEAR_FIELD
  public static final int DAY_OF_YEAR_FIELD
DAY_OF_YEARフィールドの位置合せのための便利な定数。日付/時刻フォーマット機能の FieldPositionで使用します。

 o DAY_OF_WEEK_IN_MONTH_FIELD
  public static final int DAY_OF_WEEK_IN_MONTH_FIELD
DAY_OF_WEEK_IN_MONTHフィールドの位置合せのための便利な定数。日付/時刻フォーマット機能の FieldPositionで使用します。

 o WEEK_OF_YEAR_FIELD
  public static final int WEEK_OF_YEAR_FIELD
WEEK_OF_YEARフィールドの位置合せのための便利な定数。日付/時刻フォーマット機能の FieldPositionで使用します。

 o WEEK_OF_MONTH_FIELD
  public static final int WEEK_OF_MONTH_FIELD
WEEK_OF_MONTHフィールドの位置合せのための便利な定数。日付/時刻フォーマット機能の FieldPositionで使用します。

 o AM_PM_FIELD
  public static final int AM_PM_FIELD
AM_PMフィールドの位置合せのための便利な定数。日付/時刻フォーマット機能の FieldPositionで使用します。

 o HOUR1_FIELD
  public static final int HOUR1_FIELD
1ベースの HOURフィールドの位置合せのための便利な定数。日付/時刻フォーマット機能の FieldPositionで使用します。HOUR1_FIELDは、1ベースの 24時間時計で使用します。たとえば、11:30 PM + 1時間は 12:30 AMとなります。

 o HOUR0_FIELD
  public static final int HOUR0_FIELD
0ベースの HOURフィールドの位置合せのための便利な定数。日付/時刻フォーマット機能の FieldPositionで使用します。HOUR0_FIELDは、0ベースの 24時間時計で使用します。たとえば、11:30 PM + 1時間は 00:30 AMとなります。

 o TIMEZONE_FIELD
  public static final int TIMEZONE_FIELD
TIMEZONEフィールドの位置合せのための便利な定数。日付/時刻フォーマット機能の FieldPositionで使用します。

 o FULL
  public static final int FULL
全スタイルパターンのための定数。

 o LONG
  public static final int LONG
長いスタイルパターンのための定数。

 o MEDIUM
  public static final int MEDIUM
長さが中位のスタイルパターンのための定数。

 o SHORT
  public static final int SHORT
短いスタイルパターンのための定数。

 o DEFAULT
  public static final int DEFAULT
デフォルトスタイルパターンのための定数。

Constructors

 o DateFormat
  protected DateFormat()

Methods

 o format
  public final StringBuffer format(Object obj,
                                   StringBuffer toAppendTo,
                                   FieldPosition fieldPosition)
Formatをオーバーライドします。時刻オブジェクトを時刻文字列にフォーマットします。時刻オブジェクトの例は、時刻値をミリ秒と Dateオブジェクトで表した場合です。

パラメータ:
obj - Numberか Date
toAppendTo - 返される時刻文字列のための文字列バッファ
status - フォーマットステータス。入力時: 希望する場合、配置フィールド。出力時: 配置フィールドのオフセット。
返り値:
フォーマットされた時刻文字列
オーバーライド:
クラス Formatformat
参照:
Format
 o 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 にセットされます。
返り値:
フォーマットされた日付/時刻文字列
 o format
  public final String format(Date date)
Dateを日付/時刻文字列にフォーマットします。

パラメータ:
date - 時刻文字列にフォーマットする時刻値
返り値:
フォーマットされた時刻文字列
 o parse
  public Date parse(String text) throws ParseException
日付/時刻文字列を解析する。

例外: ParseException
その文字列が日付として解析できない場合
参照:
parse
 o 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
 o parseObject
  public Object parseObject(String source,
                            ParsePosition pos)
日付/時刻文字列を Objectに解析します。このコンビニエンスメソッドは、parse(String, ParsePosition)を呼び出すだけです。

オーバーライド:
クラス FormatparseObject
参照:
parse
 o getTimeInstance
  public static final DateFormat getTimeInstance()
デフォルトのロケールに対しデフォルトのフォーマット化スタイルをもつ時刻フォーマッタを入手します。

返り値:
時刻フォーマッタ
 o getTimeInstance
  public static final DateFormat getTimeInstance(int style)
デフォルトのロケールに対し指定のフォーマット化スタイルをもつ時刻フォーマッタを入手します。

パラメータ:
style - 指定するフォーマット化スタイル。たとえば、USロケールにおける "h:mm a"に対する SHORT
返り値:
時刻フォーマッタ
 o getTimeInstance
  public static final DateFormat getTimeInstance(int style,
                                                 Locale aLocale)
指定するロケールに対し指定のフォーマット化スタイルをもつ時刻フォーマッタを入手します。

パラメータ:
style - 指定するフォーマット化スタイル。たとえば、USロケールにおける "h:mm a"に対する SHORT
inLocale - 指定するロケール
返り値:
時刻フォーマッタ
 o getDateInstance
  public static final DateFormat getDateInstance()
デフォルトのロケールに対しデフォルトのフォーマット化スタイルをもつ日付フォーマッタを入手します。

返り値:
日付フォーマッタ
 o getDateInstance
  public static final DateFormat getDateInstance(int style)
デフォルトのロケールに対し指定のフォーマット化スタイルをもつ日付フォーマッタを入手します。

パラメータ:
style - 指定するフォーマット化スタイル。たとえば、USロケールにおける "M/d/yy"に対する SHORT
返り値:
日付フォーマッタ
 o getDateInstance
  public static final DateFormat getDateInstance(int style,
                                                 Locale aLocale)
指定するロケールに対し指定のフォーマット化スタイルをもつ日付フォーマッタを入手します。

パラメータ:
style - 指定するフォーマット化スタイル。たとえば、USロケールにおける "M/d/yy"に対する SHORT
inLocale - 指定するロケール
返り値:
日付フォーマッタ
 o getDateTimeInstance
  public static final DateFormat getDateTimeInstance()
デフォルトのロケールに対しデフォルトのフォーマット化スタイルをもつ日付/時刻フォーマッタを入手します。

返り値:
日付/時刻フォーマッタ
 o getDateTimeInstance
  public static final DateFormat getDateTimeInstance(int dateStyle,
                                                     int timeStyle)
デフォルトのロケールに対し指定の日付/時刻フォーマット化スタイルをもつ日付/時刻フォーマッタを入手します。

パラメータ:
dateStyle - 指定する日付フォーマット化スタイル。たとえば、USロケールにおける "M/d/yy"に対する SHORT
timeStyle - 指定する時刻フォーマット化スタイル。たとえば、USロケールにおける ":h:mm a"に対する SHORT
返り値:
日付/時刻フォーマッタ
 o getDateTimeInstance
  public static final DateFormat getDateTimeInstance(int dateStyle,
                                                     int timeStyle,
                                                     Locale aLocale)
指定するロケールに対し指定のフォーマット化スタイルをもつ日付/時刻フォーマッタを入手します。

パラメータ:
dateStyle - 指定する日付フォーマット化スタイル
timeStyle - 指定する時刻フォーマット化スタイル
inLocale - 指定するロケール
返り値:
日付/時刻フォーマッタ
 o getInstance
  public static final DateFormat getInstance()
日付と時刻の両方に対し SHORTスタイルをもつ日付/時刻フォーマッタを入手します。

 o getAvailableLocales
  public static Locale[] getAvailableLocales()
DateFormatsが導入されているロケールセットを入手します。

返り値:
DateFormatsが導入されているロケールセット
 o setCalendar
  public void setCalendar(Calendar newCalendar)
この日付フォーマットで使用するカレンダを設定します。最初は、指定またはデフォルトのロケールに対しデフォルトのカレンダが使用されます。

 o getCalendar
  public Calendar getCalendar()
この日付/時刻フォーマッタに対応するカレンダを入手します。

返り値:
この日付/時刻フォーマッタに対応するカレンダ
 o setNumberFormat
  public void setNumberFormat(NumberFormat newNumberFormat)
数値フォーマッタを設定します。

パラメータ:
newNumberFormat - 指定する新しい NumberFormat
 o getNumberFormat
 public NumberFormat getNumberFormat()
時刻のフォーマットと解析のためにこの日付/時刻フォーマッタが使用する数値フォーマッタを入手します。

返り値:
この日付/時刻フォーマッタが使用する数値フォーマッタ
 o setTimeZone
  public void setTimeZone(TimeZone zone)
この DateFormatオブジェクトのカレンダの時間帯を設定します。

パラメータ:
zone - 指定する新しい時間帯
 o getTimeZone
  public TimeZone getTimeZone()
時間帯を入手します。

返り値:
DateFormatのカレンダに対応する時間帯
 o setLenient
  public void setLenient(boolean lenient)
日付/時刻解析を厳密に行うかどうかを指定します。厳密でない解析では、解析機能は、発見的な方法を使って、このオブジェクトのフォーマットと完全には一致しない入力を解釈することがあります。厳密な解析では、入力はこのオブジェクトのフォーマットと一致しなければなりません。

参照:
setLenient
 o isLenient
  public boolean isLenient()
日付/時刻の解析が厳密ではないことを指定します。

 o hashCode
  public int hashCode()
hashCodeをオーバーライドします。

オーバーライド:
クラス ObjecthashCode
 o equals
  public boolean equals(Object obj)
eqaulsをオーバーライドします。

オーバーライド:
クラス Objectequals
 o clone
  public Object clone()
Cloneableをオーバーライドします。

オーバーライド:
クラス Formatclone

全パッケージ  クラス階層  このパッケージ  前項目  次項目  インデックス