public class DateFormatSymbols extends Object implements Serializable, Cloneable
DateFormatSymbols
は、月、曜日、タイムゾーン・データなど、ローカライズが可能な日時フォーマット・データをカプセル化するためのpublicクラスです。SimpleDateFormat
は、DateFormatSymbols
を使ってこの情報をカプセル化します。
一般には、DateFormatSymbols
を直接使うことはしません。その代わりに、DateFormat
クラスのファクトリ・メソッドgetTimeInstance
、getDateInstance
またはgetDateTimeInstance
を使って日時フォーマッタを作成することをお薦めします。これらのメソッドを使うと、そのフォーマッタのDateFormatSymbols
が自動的に作成されるので、新しく作成する必要はありません。フォーマッタが作成されたら、そのフォーマット・パターンはsetPattern
メソッドを使って修正することができます。DateFormat
のファクトリ・メソッドを使ってフォーマットを作成する方法については、DateFormat
を参照してください。
特定ロケールの特定フォーマット・パターンを使って日時フォーマッタを作成する場合には、次の方法でできます。
new SimpleDateFormat(aPattern, DateFormatSymbols.getInstance(aLocale)).
DateFormatSymbols
オブジェクトは複製可能です。DateFormatSymbols
オブジェクトを取得したら、その日時フォーマット・データを自由に変更できます。たとえば、ローカライズされた日時フォーマット・パターン文字を、覚えやすいものに置き換えることができます。あるいは、代表的な都市名を好みのものに変えることができます。
追加ロケールの日時フォーマットのSimpleDateFormat
をサポートするために、新しいDateFormatSymbols
サブクラスを追加できます。
DateFormat
, SimpleDateFormat
, SimpleTimeZone
, 直列化された形式コンストラクタと説明 |
---|
DateFormatSymbols()
デフォルトの
FORMAT ロケール用のリソースからフォーマット・データをロードすることによって、DateFormatSymbolsオブジェクトを構築します。 |
DateFormatSymbols(Locale locale)
指定されたロケールに対するリソースからフォーマット・データを読み込むことによって、DateFormatSymbolsオブジェクトを構築します。
|
修飾子と型 | メソッドと説明 |
---|---|
Object |
clone()
Cloneableをオーバーライドします。
|
boolean |
equals(Object obj)
equalsをオーバーライドします。
|
String[] |
getAmPmStrings()
午前/午後の文字列を取得します。
|
static Locale[] |
getAvailableLocales()
このクラスの
getInstance メソッドがローカライズされたインスタンスを返すことのできるロケールすべての配列を返します。 |
String[] |
getEras()
紀元の文字列を取得します。
|
static DateFormatSymbols |
getInstance()
デフォルト・ロケールの
DateFormatSymbols インスタンスを取得します。 |
static DateFormatSymbols |
getInstance(Locale locale)
指定されたロケールの
DateFormatSymbols インスタンスを取得します。 |
String |
getLocalPatternChars()
ローカライズされた日時パターン文字を取得します。
|
String[] |
getMonths()
月の文字列を取得します。
|
String[] |
getShortMonths()
月の短縮文字列を取得します。
|
String[] |
getShortWeekdays()
曜日の短縮文字列を取得します。
|
String[] |
getWeekdays()
曜日の文字列を取得します。
|
String[][] |
getZoneStrings()
タイムゾーンの文字列を取得します。
|
int |
hashCode()
hashCodeをオーバーライドします。
|
void |
setAmPmStrings(String[] newAmpms)
午前/午後の文字列を設定します。
|
void |
setEras(String[] newEras)
紀元の文字列を設定します。
|
void |
setLocalPatternChars(String newLocalPatternChars)
ローカライズされた日時パターン文字を設定します。
|
void |
setMonths(String[] newMonths)
月の文字列を設定します。
|
void |
setShortMonths(String[] newShortMonths)
月の短縮文字列を設定します。
|
void |
setShortWeekdays(String[] newShortWeekdays)
曜日の短縮文字列を設定します。
|
void |
setWeekdays(String[] newWeekdays)
曜日の文字列を設定します。
|
void |
setZoneStrings(String[][] newZoneStrings)
タイムゾーンの文字列を設定します。
|
public DateFormatSymbols()
FORMAT
ロケール用のリソースからフォーマット・データをロードすることによって、DateFormatSymbolsオブジェクトを構築します。このコンストラクタでは、Java実行環境でサポートされているロケールについてのみ、インスタンスを構築できます。インストールされているDateFormatSymbolsProvider
実装でサポートされているロケールについては、インスタンスを構築できません。すべてのロケールをカバーするには、getInstance
メソッドを使用してください。
これは、DateFormatSymbols(Locale.getDefault(Locale.Category.FORMAT))
の呼び出しと同等です。
MissingResourceException
- デフォルト・ロケールに対するリソースが見つからないか、読み込めない場合。getInstance()
、Locale.getDefault(java.util.Locale.Category)
、Locale.Category.FORMAT
public DateFormatSymbols(Locale locale)
DateFormatSymbolsProvider
実装でサポートされているロケールについては、インスタンスを構築できません。すべてのロケールをカバーするには、getInstance
メソッドを使用してください。locale
- 目的のロケールMissingResourceException
- 指定されたロケールに対するリソースが見つからないか、読み込めない場合。getInstance(Locale)
public static Locale[] getAvailableLocales()
getInstance
メソッドがローカライズされたインスタンスを返すことのできるロケールすべての配列を返します。返される配列は、JavaランタイムおよびインストールされているDateFormatSymbolsProvider
実装によってサポートされているロケールの和集合を表します。これには、Locale.US
と等価なLocale
インスタンスが少なくとも1つ含まれている必要があります。DateFormatSymbols
インスタンスを使用可能なロケールの配列。public static final DateFormatSymbols getInstance()
DateFormatSymbols
インスタンスを取得します。このメソッドを使用すると、Javaランタイム自体でサポートされているロケールと、インストールされているDateFormatSymbolsProvider
実装でサポートされているロケールの、DateFormatSymbols
インスタンスにアクセスできます。
これは、getInstance(Locale.getDefault(Locale.Category.FORMAT))
の呼び出しと同等です。
DateFormatSymbols
のインスタンス。Locale.getDefault(java.util.Locale.Category)
、Locale.Category.FORMAT
public static final DateFormatSymbols getInstance(Locale locale)
DateFormatSymbols
インスタンスを取得します。このメソッドを使用すると、Javaランタイム自体でサポートされているロケールと、インストールされているDateFormatSymbolsProvider
実装でサポートされているロケールの、DateFormatSymbols
インスタンスにアクセスできます。locale
- 指定されたロケール。DateFormatSymbols
のインスタンス。NullPointerException
- locale
がnullの場合public String[] getEras()
public void setEras(String[] newEras)
newEras
- 新しい紀元の文字列。public String[] getMonths()
フォーマットおよびスタンドアロンの使用のために異なる形式を言語が必要とする場合、このメソッドは月の名前をフォーマット形式で返します。たとえば、チェコ語で優先する1月の月の名前は、フォーマット形式ではlednaですが、スタンドアロン形式ではledenです。この場合、このメソッドは"ledna"
を返します。詳細は、Unicode Locale Data Markup Language (LDML)仕様のカレンダ要素を参照してください。
public void setMonths(String[] newMonths)
newMonths
- 新しい月の文字列。public String[] getShortMonths()
フォーマットおよびスタンドアロンの使用のために異なる形式を言語が必要とする場合、このメソッドは月の短い名前をフォーマット形式で返します。たとえば、カタロニア語で優先する1月の略称は、フォーマット形式ではde gen.ですが、スタンドアロン形式ではlgen.です。この場合、このメソッドは"de gen."
を返します。詳細は、Unicode Locale Data Markup Language (LDML)仕様のカレンダ要素を参照してください。
public void setShortMonths(String[] newShortMonths)
newShortMonths
- 新しい月の短縮文字列。public String[] getWeekdays()
Calendar.SUNDAY
、Calendar.MONDAY
などを使用。public void setWeekdays(String[] newWeekdays)
newWeekdays
- 新しい曜日の文字列。配列のインデックスには、Calendar.SUNDAY
、Calendar.MONDAY
などを使用。public String[] getShortWeekdays()
Calendar.SUNDAY
、Calendar.MONDAY
などを使用。public void setShortWeekdays(String[] newShortWeekdays)
newShortWeekdays
- 新しい曜日の短縮文字列。配列のインデックスには、Calendar.SUNDAY
、Calendar.MONDAY
などを使用。public String[] getAmPmStrings()
public void setAmPmStrings(String[] newAmpms)
newAmpms
- 新しい午前/午後の文字列。public String[][] getZoneStrings()
TimeZone.getDisplayName()
を使用してください。
返される値は、サイズがn×mの2次元の文字列配列で、この場合のmは5以上になります。各n行は、単一のTimeZone
に対してローカライズされた名前を含むエントリです。各行には次のものが含まれます(i
は0からn-1の範囲内)。
zoneStrings[i][0]
- タイムゾーンIDzoneStrings[i][1]
- 標準時刻のゾーンの長い名前zoneStrings[i][2]
- 標準時刻のゾーンの短い名前zoneStrings[i][3]
- 夏時間のゾーンの長い名前zoneStrings[i][4]
- 夏時間のゾーンの短い名前TimeZone
クラスの、カスタムIDではない有効なIDのいずれかです。ほかのエントリはすべてローカライズされた名前です。ゾーンで夏時間が実装されていない場合、夏時間の名前は使用しないようにしてください。
このDateFormatSymbols
インスタンスに対してsetZoneStrings
がすでに呼び出されていた場合は、その呼出しによって指定された文字列が返されます。それ以外の場合、返される配列には、JavaランタイムおよびインストールされているTimeZoneNameProvider
実装によって提供されている名前が格納されます。
setZoneStrings(String[][])
public void setZoneStrings(String[][] newZoneStrings)
TimeZone
に対してローカライズされた名前を含むエントリです。各行には次のものが含まれます(i
は0からn-1の範囲内)。
zoneStrings[i][0]
- タイムゾーンIDzoneStrings[i][1]
- 標準時刻のゾーンの長い名前zoneStrings[i][2]
- 標準時刻のゾーンの短い名前zoneStrings[i][3]
- 夏時間のゾーンの長い名前zoneStrings[i][4]
- 夏時間のゾーンの短い名前TimeZone
クラスの、カスタムIDではない有効なIDのいずれかです。ほかのエントリはすべてローカライズされた名前です。newZoneStrings
- 新しいタイムゾーン文字列。IllegalArgumentException
- newZoneStrings
のいずれかの行が5より短い場合NullPointerException
- newZoneStrings
がnullである場合getZoneStrings()
public String getLocalPatternChars()
public void setLocalPatternChars(String newLocalPatternChars)
newLocalPatternChars
- 新しいローカライズされた日時パターン文字。public Object clone()
public int hashCode()
hashCode
、クラス: Object
Object.equals(java.lang.Object)
, System.identityHashCode(java.lang.Object)
public boolean equals(Object obj)
equals
、クラス: Object
obj
- 比較対象の参照オブジェクト。true
、それ以外の場合はfalse
。Object.hashCode()
、HashMap
バグまたは機能を送信
詳細なAPIリファレンスおよび開発者ドキュメントについては、Java SEのドキュメントを参照してください。そのドキュメントには、概念的な概要、用語の定義、回避方法、有効なコード例などの、開発者を対象にしたより詳細な説明が含まれています。
Copyright© 1993, 2014, Oracle and/or its affiliates. All rights reserved.