クラスCalendarNameProvider
Calendarフィールド値のローカライズされた文字列表現(表示名)を提供するサービス・プロバイダの抽象クラス。
カレンダ・タイプは、getDisplayNameおよびgetDisplayNamesメソッドがカレンダ・フィールド値名を提供する暦体系を指定するために使用します。 詳細は、Calendar.getCalendarType()を参照してください。
カレンダ・フィールド
カレンダ・フィールドは、Calendarに定義された定数で指定されます。 各暦体系でサポートされているカレンダの一般的なフィールドとそれらの値を次に示します。
| フィールド | 値 | 説明 |
|---|---|---|
Calendar.MONTH |
Calendar.JANUARYからCalendar.UNDECIMBER |
月の番号付けは0から始まります(たとえば、0 - 1月、...、11 - 12月)。 一部の暦体系には13か月あります。 月の名前は、サポートされるロケールで必要な場合に、書式設定とスタンドアロン形式の両方でサポートされている必要があります。 2つの形式に区別がない場合は、両方の形式で同じ名前を返すようにしてください。 |
Calendar.DAY_OF_WEEK |
Calendar.SUNDAYからCalendar.SATURDAY |
曜日の番号付けは日曜日の1から始まります(つまり、1 - 日曜日、...、7 - 土曜日)。 |
Calendar.AM_PM |
Calendar.AMからCalendar.PM |
0 - 午前、1 - 午後 |
サポートされるカレンダ固有のフィールドとそれらの値を次に示します。
| カレンダ・タイプ | フィールド | 値 | 説明 |
|---|---|---|---|
"gregory" |
Calendar.ERA |
0 | GregorianCalendar.BC (BCE) |
| 1 | GregorianCalendar.AD (CE) |
||
"buddhist" |
Calendar.ERA |
0 | BC (BCE) |
| 1 | B.E. (仏暦紀元) | ||
"japanese" |
Calendar.ERA |
0 | 西暦(明治以前) |
| 1 | 明治 | ||
| 2 | 大正 | ||
| 3 | 昭和 | ||
| 4 | 平成 | ||
| 5 | 令和 | ||
Calendar.YEAR |
1 | 各紀元の最初の年。 長いスタイル(Calendar.LONG_FORMATまたはCalendar.LONG_STANDALONE)が指定されている場合に、返すようにしてください。 SimpleDateFormatの年の表現も参照してください。 |
|
"roc" |
Calendar.ERA |
0 | R.O.C.前 |
| 1 | R.O.C. | ||
"islamic" |
Calendar.ERA |
0 | AH前 |
| 1 | ヒジュラ暦紀元(AH) |
"gregory"のカレンダ・フィールド値の名前は、DateFormatSymbolsProviderによって指定された日付/時間記号と一致している必要があります。
タイム・ゾーン名はTimeZoneNameProviderによってサポートされます。
- 導入されたバージョン:
- 1.8
- 関連項目:
-
コンストラクタのサマリー
コンストラクタ -
メソッドのサマリー
修飾子と型メソッド説明abstract StringgetDisplayName(String calendarType, int field, int value, int style, Locale locale) 指定されたstyleとlocaleのカレンダfield値の文字列表現(表示名)を返します。getDisplayNames(String calendarType, int field, int style, Locale locale) 指定されたstyleおよびlocaleのCalendarfieldのすべての文字列表現(表示名)とそれらに対応するフィールド値を含むMapを返します。クラスjava.util.spi.LocaleServiceProviderで宣言されたメソッド
getAvailableLocales, isSupportedLocale
-
コンストラクタの詳細
-
CalendarNameProvider
protected CalendarNameProvider()唯一のコンストラクタです。 (サブクラスのコンストラクタによる呼出し用で、通常は暗黙的に呼び出されます。)
-
-
メソッドの詳細
-
getDisplayName
public abstract String getDisplayName(String calendarType, int field, int value, int style, Locale locale) 指定されたstyleとlocaleのカレンダfield値の文字列表現(表示名)を返します。 適用できる文字列表現がない場合は、nullが返されます。fieldはCalendar.MONTHなどのCalendarフィールド・インデックスです。 タイム・ゾーンフィールドのCalendar.ZONE_OFFSETおよびCalendar.DST_OFFSETはこのメソッドでサポートされていません。いずれかのタイム・ゾーン・フィールドが指定されている場合は、nullを返す必要があります。valueはfield値の数値表現です。 たとえば、fieldがCalendar.DAY_OF_WEEKの場合、有効な値はCalendar.SUNDAYからCalendar.SATURDAY(この値を含む)です。styleは文字列表現のスタイルを指定します。 それは、Calendar.SHORT_FORMAT(SHORT)、Calendar.SHORT_STANDALONE、Calendar.LONG_FORMAT(LONG)、Calendar.LONG_STANDALONE、Calendar.NARROW_FORMAT、Calendar.NARROW_STANDALONEのいずれかです。たとえば、次の呼び出しは
"Sunday"を返します。getDisplayName("gregory", Calendar.DAY_OF_WEEK, Calendar.SUNDAY, Calendar.LONG_STANDALONE, Locale.ENGLISH);- パラメータ:
calendarType- カレンダ・タイプ。 (localeによって指定されるカレンダ・タイプは無視されます。)field-Calendarフィールド・インデックス、Calendar.DAY_OF_WEEKなどvalue-Calendar fieldの値、Calendar.MONDAYなどstyle- 文字列表現スタイル:Calendar.SHORT_FORMAT(SHORT)、Calendar.SHORT_STANDALONE、Calendar.LONG_FORMAT(LONG)、Calendar.LONG_STANDALONE、Calendar.NARROW_FORMAT、Calendar.NARROW_STANDALONEのいずれかlocale- 目的のロケール- 戻り値:
field valueの文字列表現。適用できる文字列表現がないか、または指定されたカレンダ・タイプが不明な場合は、null。- スロー:
IllegalArgumentException-fieldまたはstyleが無効な場合NullPointerException-localeがnullである場合- 関連項目:
-
getDisplayNames
public abstract Map<String,Integer> getDisplayNames(String calendarType, int field, int style, Locale locale) 指定されたstyleおよびlocaleのCalendarfieldのすべての文字列表現(表示名)とそれらに対応するフィールド値を含むMapを返します。fieldはCalendar.MONTHなどのCalendarフィールド・インデックスです。 タイム・ゾーンフィールドのCalendar.ZONE_OFFSETおよびCalendar.DST_OFFSETはこのメソッドでサポートされていません。いずれかのタイム・ゾーン・フィールドが指定されている場合は、nullを返す必要があります。styleは文字列表現のスタイルを指定します。Calendar.ALL_STYLES、Calendar.SHORT_FORMAT(SHORT)、Calendar.SHORT_STANDALONE、Calendar.LONG_FORMAT(LONG)、Calendar.LONG_STANDALONE、Calendar.NARROW_FORMAT、Calendar.NARROW_STANDALONEのいずれかである必要があります。 縮小名は、SundayとSaturdayの「S」など、1文字を使用するために一意でないことがあり、その場合に縮小名を含めないことに注意してください。たとえば、次の呼び出しは、
"January"からCalendar.JANUARY、"Jan"からCalendar.JANUARY、"February"からCalendar.FEBRUARY、"Feb"からCalendar.FEBRUARYというように含むMapを返します。getDisplayNames("gregory", Calendar.MONTH, Calendar.ALL_STYLES, Locale.ENGLISH);- パラメータ:
calendarType- カレンダ・タイプ。 (localeによって指定されるカレンダ・タイプは無視されます。)field- 表示名が返されるカレンダ・フィールドstyle- 表示名に適用されるスタイル。Calendar.ALL_STYLES、Calendar.SHORT_FORMAT(SHORT)、Calendar.SHORT_STANDALONE、Calendar.LONG_FORMAT(LONG),Calendar.LONG_STANDALONE、Calendar.NARROW_FORMAT、Calendar.NARROW_STANDALONEのいずれかlocale- 目的のロケール- 戻り値:
styleとlocaleで、fieldのすべての表示名とそれらのfield値を含むMap。fieldに表示名が定義されていない場合は、null- スロー:
NullPointerException-localeがnullである場合- 関連項目:
-