- java.lang.Object
-
- java.util.spi.LocaleServiceProvider
-
- java.util.spi.CalendarNameProvider
-
public abstract class CalendarNameProvider extends LocaleServiceProvider
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 平成 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
- 関連項目:
CalendarDataProvider
,Locale.getUnicodeLocaleType(String)
-
-
コンストラクタのサマリー
コンストラクタ 修飾子 コンストラクタ 説明 protected
CalendarNameProvider()
唯一のコンストラクタです。
-
メソッドのサマリー
修飾子と型 メソッド 説明 abstract String
getDisplayName(String calendarType, int field, int value, int style, Locale locale)
指定されたstyle
とlocale
のカレンダfield
値の文字列表現(表示名)を返します。abstract Map<String,Integer>
getDisplayNames(String calendarType, int field, int style, Locale locale)
指定されたstyle
およびlocale
でCalendar
field
のすべての文字列表現(表示名)とそれらの対応するフィールド値を含むMap
を返します。-
クラス java.util.spi.LocaleServiceProviderで宣言されたメソッド
getAvailableLocales、isSupportedLocale
-
-
-
-
メソッドの詳細
-
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
である場合- 関連項目:
TimeZoneNameProvider
,Calendar.get(int)
,Calendar.getDisplayName(int, int, Locale)
-
getDisplayNames
public abstract Map<String,Integer> getDisplayNames(String calendarType, int field, int style, Locale locale)
指定されたstyle
およびlocale
でCalendar
field
のすべての文字列表現(表示名)とそれらの対応するフィールド値を含む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
である場合- 関連項目:
Calendar.getDisplayNames(int, int, Locale)
-
-