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によってサポートされます。
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を返します。 |
getAvailableLocales, isSupportedLocaleprotected CalendarNameProvider()
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)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に表示名が定義されていない場合は、nullNullPointerException - localeがnullである場合Calendar.getDisplayNames(int, int, Locale) バグまたは機能を送信
詳細なAPIリファレンスおよび開発者ドキュメントについては、Java SEのドキュメントを参照してください。そのドキュメントには、概念的な概要、用語の定義、回避方法、有効なコード例などの、開発者を対象にしたより詳細な説明が含まれています。
Copyright© 1993, 2014, Oracle and/or its affiliates. All rights reserved.