Class DateFormatSymbols
- All Implemented Interfaces:
Serializable
,Cloneable
- Direct Known Subclasses:
ChineseDateFormatSymbols
DateFormatSymbols
is a public class for encapsulating
localizable date-time formatting data, such as the names of the
months, the names of the days of the week, and the time zone data.
DateFormat
and SimpleDateFormat
both use
DateFormatSymbols
to encapsulate this information.
Typically you shouldn't use DateFormatSymbols
directly.
Rather, you are encouraged to create a date-time formatter with the
DateFormat
class's factory methods: getTimeInstance
,
getDateInstance
, or getDateTimeInstance
.
These methods automatically create a DateFormatSymbols
for
the formatter so that you don't have to. After the
formatter is created, you may modify its format pattern using the
setPattern
method. For more information about
creating formatters using DateFormat
's factory methods,
see DateFormat
.
If you decide to create a date-time formatter with a specific format pattern for a specific locale, you can do so with:
new SimpleDateFormat(aPattern, new DateFormatSymbols(aLocale)).
DateFormatSymbols
objects are clonable. When you obtain
a DateFormatSymbols
object, feel free to modify the
date-time formatting data. For instance, you can replace the localized
date-time format pattern characters with the ones that you feel easy
to remember. Or you can change the representative cities
to your favorite ones.
New DateFormatSymbols
subclasses may be added to support
SimpleDateFormat
for date-time formatting for additional locales.
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionprivate static final class
Sink to enumerate the calendar data(package private) static enum
Constants for capitalization context usage types related to date formatting. -
Field Summary
FieldsModifier and TypeFieldDescriptionstatic final int
Constant for width.(package private) String[]
Localized names for abbreviated (== short) day periods.private ULocale
The locale containing data used to construct this object, or null.(package private) static final String
This alternate time separator is always recognized when parsing.(package private) String[]
AM and PM strings.(package private) String[]
narrow AM and PM strings.private static final String[][]
(package private) Map<DateFormatSymbols.CapitalizationContextUsage,
boolean[]> Capitalization transforms.private static final Map<String,
DateFormatSymbols.CapitalizationContextUsage> Map from resource key to CapitalizationContextUsage valueprivate static final String[]
Keys for dayPeriods(package private) static final String
This default time separator is used for formatting when the locale doesn't specify any time separator, and always recognized when parsing.private static CacheBase<String,
DateFormatSymbols, ULocale> static final int
Deprecated.This API is ICU internal only.(package private) static final int
Somewhat temporary constant for leap month pattern type, adequate for Chinese calendar.(package private) static final int
Somewhat temporary constant for leap month pattern type, adequate for Chinese calendar.(package private) static final int
Somewhat temporary constant for leap month pattern type, adequate for Chinese calendar.(package private) static final int
Somewhat temporary constant for leap month pattern type, adequate for Chinese calendar.(package private) static final int
Somewhat temporary constant for leap month pattern type, adequate for Chinese calendar.(package private) static final int
Somewhat temporary constant for leap month pattern type, adequate for Chinese calendar.(package private) static final int
Somewhat temporary constant for leap month pattern type, adequate for Chinese calendar.(package private) static final int
Somewhat temporary constant for month pattern count, adequate for Chinese calendar.static final int
Deprecated.This API is ICU internal only.(package private) String[]
Era name strings.(package private) String[]
Era strings.static final int
Constant for context.private static final String[]
Resource bundle paths for each leap month pattern(package private) String[]
All leap month patterns, for example "{0}bis".(package private) String
Localized date-time pattern characters.(package private) static final int
Useful constant for defining timezone offsets.(package private) String[]
Month strings.static final int
Constant for width.(package private) String[]
Localized names for narrow day periods.(package private) String[]
Narrow era names.(package private) String[]
Narrow month strings.(package private) String[]
Narrow quarter names.(package private) String[]
CLDR-style format narrow weekday strings, for example: "S", "M", etc.static final int
Deprecated.This API is ICU internal only.(package private) static final String
Unlocalized date-time pattern characters.(package private) String[]
Full quarter names.private ULocale
private static final long
static final int
Constant for width; only supported for weekdays.(package private) String[]
CLDR-style format short weekday strings, for example: "Su", "Mo", etc.(package private) String[]
Short month strings.(package private) String[]
Abbreviated quarter names.(package private) String[]
CLDR-style format abbreviated (not short) weekday strings, for example: "Sun", "Mon", etc.(package private) String[]
Cyclic year names, for example: "jia-zi", "yi-chou", ...(package private) String[]
Cyclic zodiac names, for example: "Rat", "Ox", "Tiger", etc.static final int
Constant for context.(package private) String[]
Localized names for standalone abbreviated (== short) day periods.(package private) String[]
Standalone month strings.(package private) String[]
Localized names for standalone narrow day periods.(package private) String[]
Standalone narrow month strings.(package private) String[]
Standalone narrow quarter names.(package private) String[]
Standalone narrow weekday strings.(package private) String[]
Standalone full quarter names.(package private) String[]
CLDR-style standalone short weekday strings, for example: "Sun", "Mon", etc.(package private) String[]
Standalone short month strings.(package private) String[]
Standalone abbreviated quarter names.(package private) String[]
CLDR-style standalone abbreviated (not short) weekday strings, for example: "Sun", "Mon", etc.(package private) String[]
Standalone wide weekday strings.(package private) String[]
Localized names for standalone wide day periods.private String
Time separator string.private ULocale
The most specific locale containing any resource data, or null.(package private) String[]
Format wide weekday strings, for example: "Sunday", "Monday", etc.static final int
Constant for width.(package private) String[]
Localized names for wide day periods.private String[][]
Localized names of time zones in this locale. -
Constructor Summary
ConstructorsModifierConstructorDescriptionConstructs a DateFormatSymbols object by loading format data from resources for the defaultFORMAT
locale.DateFormatSymbols
(Calendar cal, ULocale locale) Returns theDateFormatSymbols
object that should be used to format a calendar system's dates in the given locale.DateFormatSymbols
(Calendar cal, Locale locale) Returns theDateFormatSymbols
object that should be used to format a calendar system's dates in the given locale.DateFormatSymbols
(ULocale locale) Constructs a DateFormatSymbols object by loading format data from resources for the given ulocale.private
DateFormatSymbols
(ULocale desiredLocale, ICUResourceBundle b, String calendarType) Private, for cache.getInstance().DateFormatSymbols
(Class<? extends Calendar> calendarClass, ULocale locale) Variant of DateFormatSymbols(Calendar, ULocale) that takes the Calendar class instead of a Calendar instance.DateFormatSymbols
(Class<? extends Calendar> calendarClass, Locale locale) Variant of DateFormatSymbols(Calendar, Locale) that takes the Calendar class instead of a Calendar instance.DateFormatSymbols
(Locale locale) Constructs a DateFormatSymbols object by loading format data from resources for the given locale.DateFormatSymbols
(ResourceBundle bundle, ULocale locale) Fetches a custom calendar's DateFormatSymbols out of the given resource bundle.DateFormatSymbols
(ResourceBundle bundle, Locale locale) Fetches a custom calendar's DateFormatSymbols out of the given resource bundle. -
Method Summary
Modifier and TypeMethodDescriptionprivate static final boolean
arrayOfArrayEquals
(Object[][] aa1, Object[][] aa2) clone()
Overrides clone.private final String[]
private final String[][]
boolean
Overrides equals.String[]
Returns am/pm strings.static Locale[]
Returns an array of all locales for which thegetInstance
methods of this class can return localized instances.static ULocale[]
Returns an array of all locales for which thegetInstance
methods of this class can return localized instances.static ResourceBundle
getDateFormatBundle
(Calendar cal, ULocale locale) Deprecated.ICU 4.0static ResourceBundle
getDateFormatBundle
(Calendar cal, Locale locale) Deprecated.ICU 4.0static ResourceBundle
getDateFormatBundle
(Class<? extends Calendar> calendarClass, ULocale locale) Deprecated.ICU 4.0static ResourceBundle
getDateFormatBundle
(Class<? extends Calendar> calendarClass, Locale locale) Deprecated.ICU 4.0String[]
Returns full era name strings.String[]
getEras()
Returns abbreviated era strings.static DateFormatSymbols
Returns a DateFormatSymbols instance for the default locale.static DateFormatSymbols
getInstance
(ULocale locale) Returns a DateFormatSymbols instance for the given locale.static DateFormatSymbols
getInstance
(Locale locale) Returns a DateFormatSymbols instance for the given locale.getLeapMonthPattern
(int context, int width) Deprecated.This API is ICU internal only.final ULocale
getLocale
(ULocale.Type type) Returns the locale that was used to create this object, or null.Returns localized date-time pattern characters.String[]
Returns month strings.String[]
getMonths
(int context, int width) Returns month strings.String[]
Returns narrow era name strings.String[]
getQuarters
(int context, int width) Returns quarter strings.String[]
Returns short month strings.String[]
Returns abbreviated weekday strings; for example: "Sun", "Mon", etc.Deprecated.This API is ICU internal only.String[]
Returns wide weekday strings.String[]
getWeekdays
(int context, int width) Returns weekday strings.String[]
getYearNames
(int context, int width) Returns cyclic year name strings if the calendar has them, for example: "jia-zi", "yi-chou", etc.String[]
getZodiacNames
(int context, int width) Returns calendar zodiac name strings if the calendar has them, for example: "Rat", "Ox", "Tiger", etc.String[][]
Returns time zone strings.int
hashCode()
Override hashCode.(package private) void
Initializes format symbols using another instance.protected void
initializeData
(ULocale desiredLocale, ICUResourceBundle b, String calendarType) Deprecated.This API is ICU internal only.protected void
initializeData
(ULocale desiredLocale, String type) Initializes format symbols for the locale and calendar typeprivate String[]
loadDayPeriodStrings
(Map<String, String> resourceMap, String[] copyFrom) Loads localized names for day periods in the requested format.private void
readObject
(ObjectInputStream stream) 3.8 or older version did not have localized GMT format patterns.void
setAmPmStrings
(String[] newAmpms) Sets am/pm strings.void
setEraNames
(String[] newEraNames) Sets full era name strings.void
Sets abbreviated era strings.void
setLeapMonthPattern
(String leapMonthPattern, int context, int width) Deprecated.This API is ICU internal only.(package private) final void
Sets information about the locales that were used to create this object.void
setLocalPatternChars
(String newLocalPatternChars) Sets localized date-time pattern characters.void
Sets month strings.void
Sets month strings.void
setNarrowEras
(String[] newNarrowEras) Sets narrow era name strings.void
setQuarters
(String[] newQuarters, int context, int width) Sets quarter strings.void
setShortMonths
(String[] newShortMonths) Sets short month strings.void
setShortWeekdays
(String[] newAbbrevWeekdays) Sets abbreviated weekday strings; for example: "Sun", "Mon", etc.void
setTimeSeparatorString
(String newTimeSeparator) Deprecated.This API is ICU internal only.void
setWeekdays
(String[] newWeekdays) Sets wide weekday strings.void
setWeekdays
(String[] newWeekdays, int context, int width) Sets weekday strings.void
setYearNames
(String[] yearNames, int context, int width) Sets cyclic year name strings, for example: "jia-zi", "yi-chou", etc.void
setZodiacNames
(String[] zodiacNames, int context, int width) Sets calendar zodiac name strings, for example: "Rat", "Ox", "Tiger", etc.void
setZoneStrings
(String[][] newZoneStrings) Sets time zone strings.
-
Field Details
-
FORMAT
public static final int FORMATConstant for context.- See Also:
-
STANDALONE
public static final int STANDALONEConstant for context.- See Also:
-
NUMERIC
Deprecated.This API is ICU internal only.Constant for context. NUMERIC context is only supported for leapMonthPatterns.- See Also:
-
DT_CONTEXT_COUNT
Deprecated.This API is ICU internal only.Constant for context.- See Also:
-
ABBREVIATED
public static final int ABBREVIATEDConstant for width.- See Also:
-
WIDE
public static final int WIDEConstant for width.- See Also:
-
NARROW
public static final int NARROWConstant for width.- See Also:
-
SHORT
public static final int SHORTConstant for width; only supported for weekdays.- See Also:
-
DT_WIDTH_COUNT
Deprecated.This API is ICU internal only.Constant for width.- See Also:
-
DT_LEAP_MONTH_PATTERN_FORMAT_WIDE
static final int DT_LEAP_MONTH_PATTERN_FORMAT_WIDESomewhat temporary constant for leap month pattern type, adequate for Chinese calendar.- See Also:
-
DT_LEAP_MONTH_PATTERN_FORMAT_ABBREV
static final int DT_LEAP_MONTH_PATTERN_FORMAT_ABBREVSomewhat temporary constant for leap month pattern type, adequate for Chinese calendar.- See Also:
-
DT_LEAP_MONTH_PATTERN_FORMAT_NARROW
static final int DT_LEAP_MONTH_PATTERN_FORMAT_NARROWSomewhat temporary constant for leap month pattern type, adequate for Chinese calendar.- See Also:
-
DT_LEAP_MONTH_PATTERN_STANDALONE_WIDE
static final int DT_LEAP_MONTH_PATTERN_STANDALONE_WIDESomewhat temporary constant for leap month pattern type, adequate for Chinese calendar.- See Also:
-
DT_LEAP_MONTH_PATTERN_STANDALONE_ABBREV
static final int DT_LEAP_MONTH_PATTERN_STANDALONE_ABBREVSomewhat temporary constant for leap month pattern type, adequate for Chinese calendar.- See Also:
-
DT_LEAP_MONTH_PATTERN_STANDALONE_NARROW
static final int DT_LEAP_MONTH_PATTERN_STANDALONE_NARROWSomewhat temporary constant for leap month pattern type, adequate for Chinese calendar.- See Also:
-
DT_LEAP_MONTH_PATTERN_NUMERIC
static final int DT_LEAP_MONTH_PATTERN_NUMERICSomewhat temporary constant for leap month pattern type, adequate for Chinese calendar.- See Also:
-
DT_MONTH_PATTERN_COUNT
static final int DT_MONTH_PATTERN_COUNTSomewhat temporary constant for month pattern count, adequate for Chinese calendar.- See Also:
-
DEFAULT_TIME_SEPARATOR
This default time separator is used for formatting when the locale doesn't specify any time separator, and always recognized when parsing.- See Also:
-
ALTERNATE_TIME_SEPARATOR
This alternate time separator is always recognized when parsing.- See Also:
-
eras
String[] erasEra strings. For example: "AD" and "BC". An array of 2 strings, indexed byCalendar.BC
andCalendar.AD
. -
eraNames
String[] eraNamesEra name strings. For example: "Anno Domini" and "Before Christ". An array of 2 strings, indexed byCalendar.BC
andCalendar.AD
. -
narrowEras
String[] narrowErasNarrow era names. For example: "A" and "B". An array of 2 strings, indexed byCalendar.BC
andCalendar.AD
. -
months
String[] monthsMonth strings. For example: "January", "February", etc. An array of 13 strings (some calendars have 13 months), indexed byCalendar.JANUARY
,Calendar.FEBRUARY
, etc. -
shortMonths
String[] shortMonthsShort month strings. For example: "Jan", "Feb", etc. An array of 13 strings (some calendars have 13 months), indexed byCalendar.JANUARY
,Calendar.FEBRUARY
, etc. -
narrowMonths
String[] narrowMonthsNarrow month strings. For example: "J", "F", etc. An array of 13 strings (some calendars have 13 months), indexed byCalendar.JANUARY
,Calendar.FEBRUARY
, etc. -
standaloneMonths
String[] standaloneMonthsStandalone month strings. For example: "January", "February", etc. An array of 13 strings (some calendars have 13 months), indexed byCalendar.JANUARY
,Calendar.FEBRUARY
, etc. -
standaloneShortMonths
String[] standaloneShortMonthsStandalone short month strings. For example: "Jan", "Feb", etc. An array of 13 strings (some calendars have 13 months), indexed byCalendar.JANUARY
,Calendar.FEBRUARY
, etc. -
standaloneNarrowMonths
String[] standaloneNarrowMonthsStandalone narrow month strings. For example: "J", "F", etc. An array of 13 strings (some calendars have 13 months), indexed byCalendar.JANUARY
,Calendar.FEBRUARY
, etc. -
weekdays
String[] weekdaysFormat wide weekday strings, for example: "Sunday", "Monday", etc. An array of 8 strings, indexed byCalendar.SUNDAY
,Calendar.MONDAY
, etc. The elementweekdays[0]
is ignored. -
shortWeekdays
String[] shortWeekdaysCLDR-style format abbreviated (not short) weekday strings, for example: "Sun", "Mon", etc. An array of 8 strings, indexed byCalendar.SUNDAY
,Calendar.MONDAY
, etc. The elementshortWeekdays[0]
is ignored. -
shorterWeekdays
String[] shorterWeekdaysCLDR-style format short weekday strings, for example: "Su", "Mo", etc. An array of 8 strings, indexed byCalendar.SUNDAY
,Calendar.MONDAY
, etc. The elementshorterWeekdays[0]
is ignored. -
narrowWeekdays
String[] narrowWeekdaysCLDR-style format narrow weekday strings, for example: "S", "M", etc. An array of 8 strings, indexed byCalendar.SUNDAY
,Calendar.MONDAY
, etc. The elementnarrowWeekdays[0]
is ignored. -
standaloneWeekdays
String[] standaloneWeekdaysStandalone wide weekday strings. For example: "Sunday", "Monday", etc. An array of 8 strings, indexed byCalendar.SUNDAY
,Calendar.MONDAY
, etc. The elementstandaloneWeekdays[0]
is ignored. -
standaloneShortWeekdays
String[] standaloneShortWeekdaysCLDR-style standalone abbreviated (not short) weekday strings, for example: "Sun", "Mon", etc. An array of 8 strings, indexed byCalendar.SUNDAY
,Calendar.MONDAY
, etc. The elementstandaloneShortWeekdays[0]
is ignored. -
standaloneShorterWeekdays
String[] standaloneShorterWeekdaysCLDR-style standalone short weekday strings, for example: "Sun", "Mon", etc. An array of 8 strings, indexed byCalendar.SUNDAY
,Calendar.MONDAY
, etc. The elementstandaloneShorterWeekdays[0]
is ignored. -
standaloneNarrowWeekdays
String[] standaloneNarrowWeekdaysStandalone narrow weekday strings. For example: "S", "M", etc. An array of 8 strings, indexed byCalendar.SUNDAY
,Calendar.MONDAY
, etc. The elementstandaloneNarrowWeekdays[0]
is ignored. -
ampms
String[] ampmsAM and PM strings. For example: "AM" and "PM". An array of 2 strings, indexed byCalendar.AM
andCalendar.PM
. -
ampmsNarrow
String[] ampmsNarrownarrow AM and PM strings. For example: "a" and "p". An array of 2 strings, indexed byCalendar.AM
andCalendar.PM
. -
timeSeparator
Time separator string. For example: ":". -
shortQuarters
String[] shortQuartersAbbreviated quarter names. For example: "Q1", "Q2", "Q3", "Q4". An array of 4 strings indexed by the month divided by 3. -
narrowQuarters
String[] narrowQuartersNarrow quarter names. For example: "1", "2", "3", "4". An array of 4 strings indexed by the month divided by 3. -
quarters
String[] quartersFull quarter names. For example: "1st Quarter", "2nd Quarter", "3rd Quarter", "4th Quarter". An array of 4 strings, indexed by the month divided by 3. -
standaloneShortQuarters
String[] standaloneShortQuartersStandalone abbreviated quarter names. For example: "Q1", "Q2", "Q3", "Q4". An array of 4 strings indexed by the month divided by 3. -
standaloneNarrowQuarters
String[] standaloneNarrowQuartersStandalone narrow quarter names. For example: "1", "2", "3", "4". An array of 4 strings indexed by the month divided by 3. -
standaloneQuarters
String[] standaloneQuartersStandalone full quarter names. For example: "1st Quarter", "2nd Quarter", "3rd Quarter", "4th Quarter". An array of 4 strings, indexed by the month divided by 3. -
leapMonthPatterns
String[] leapMonthPatternsAll leap month patterns, for example "{0}bis". An array of DT_MONTH_PATTERN_COUNT strings, indexed by the DT_LEAP_MONTH_PATTERN_XXX value. -
shortYearNames
String[] shortYearNamesCyclic year names, for example: "jia-zi", "yi-chou", ... "gui-hai". An array of (normally) 60 strings, corresponding to cyclic years 1-60 (in Calendar YEAR field). Currently we only have data for format/abbreviated. For the others, just get from format/abbreviated, ignore set. -
shortZodiacNames
String[] shortZodiacNamesCyclic zodiac names, for example: "Rat", "Ox", "Tiger", etc. An array of (normally) 12 strings. Currently we only have data for format/abbreviated. For the others, just get from format/abbreviated, ignore set. -
zoneStrings
Localized names of time zones in this locale. This is a two-dimensional array of strings of size n by m, where m is at least 5 and up to 7. Each of the n rows is an entry containing the localized names for a singleTimeZone
. Each such row contains (withi
ranging from 0..n-1):zoneStrings[i][0]
- time zone IDzoneStrings[i][1]
- long name of zone in standard timezoneStrings[i][2]
- short name of zone in standard timezoneStrings[i][3]
- long name of zone in daylight savings timezoneStrings[i][4]
- short name of zone in daylight savings timezoneStrings[i][5]
- location name of zonezoneStrings[i][6]
- long generic name of zonezoneStrings[i][7]
- short generic of zone
- See Also:
-
patternChars
Unlocalized date-time pattern characters. For example: 'y', 'd', etc. All locales use the same unlocalized pattern characters.- See Also:
-
localPatternChars
String localPatternCharsLocalized date-time pattern characters. For example, a locale may wish to use 'u' rather than 'y' to represent years in its date format pattern strings. This string must be exactly 18 characters long, with the index of the characters described byDateFormat.ERA_FIELD
,DateFormat.YEAR_FIELD
, etc. Thus, if the string were "Xz...", then localized patterns would use 'X' for era and 'z' for year. -
abbreviatedDayPeriods
String[] abbreviatedDayPeriodsLocalized names for abbreviated (== short) day periods. An array of strings, in the order of DayPeriod constants. -
wideDayPeriods
String[] wideDayPeriodsLocalized names for wide day periods. An array of strings, in the order of DayPeriod constants. -
narrowDayPeriods
String[] narrowDayPeriodsLocalized names for narrow day periods. An array of strings, in the order of DayPeriod constants. -
standaloneAbbreviatedDayPeriods
String[] standaloneAbbreviatedDayPeriodsLocalized names for standalone abbreviated (== short) day periods. An array of strings, in the order of DayPeriod constants. -
standaloneWideDayPeriods
String[] standaloneWideDayPeriodsLocalized names for standalone wide day periods. An array of strings, in the order of DayPeriod constants. -
standaloneNarrowDayPeriods
String[] standaloneNarrowDayPeriodsLocalized names for standalone narrow day periods. An array of strings, in the order of DayPeriod constants. -
serialVersionUID
private static final long serialVersionUID- See Also:
-
CALENDAR_CLASSES
-
contextUsageTypeMap
Map from resource key to CapitalizationContextUsage value -
capitalization
Map<DateFormatSymbols.CapitalizationContextUsage,boolean[]> capitalizationCapitalization transforms. For each usage type, the first array element indicates whether to titlecase for uiListOrMenu context, the second indicates whether to titlecase for stand-alone context. -
millisPerHour
static final int millisPerHourUseful constant for defining timezone offsets.- See Also:
-
DFSCACHE
-
LEAP_MONTH_PATTERNS_PATHS
Resource bundle paths for each leap month pattern -
DAY_PERIOD_KEYS
Keys for dayPeriods -
requestedLocale
-
validLocale
The most specific locale containing any resource data, or null.- See Also:
-
actualLocale
The locale containing data used to construct this object, or null.- See Also:
-
-
Constructor Details
-
DateFormatSymbols
public DateFormatSymbols()Constructs a DateFormatSymbols object by loading format data from resources for the defaultFORMAT
locale.- Throws:
MissingResourceException
- if the resources for the default locale cannot be found or cannot be loaded.- See Also:
-
DateFormatSymbols
Constructs a DateFormatSymbols object by loading format data from resources for the given locale.- Throws:
MissingResourceException
- if the resources for the specified locale cannot be found or cannot be loaded.
-
DateFormatSymbols
Constructs a DateFormatSymbols object by loading format data from resources for the given ulocale.- Throws:
MissingResourceException
- if the resources for the specified locale cannot be found or cannot be loaded.
-
DateFormatSymbols
Private, for cache.getInstance(). -
DateFormatSymbols
Returns theDateFormatSymbols
object that should be used to format a calendar system's dates in the given locale.- Parameters:
cal
- The calendar system whose date format symbols are desired.locale
- The locale whose symbols are desired.- See Also:
-
DateFormatSymbols
Returns theDateFormatSymbols
object that should be used to format a calendar system's dates in the given locale.- Parameters:
cal
- The calendar system whose date format symbols are desired.locale
- The ulocale whose symbols are desired.- See Also:
-
DateFormatSymbols
Variant of DateFormatSymbols(Calendar, Locale) that takes the Calendar class instead of a Calendar instance.- See Also:
-
DateFormatSymbols
Variant of DateFormatSymbols(Calendar, ULocale) that takes the Calendar class instead of a Calendar instance.- See Also:
-
DateFormatSymbols
Fetches a custom calendar's DateFormatSymbols out of the given resource bundle. Symbols that are not overridden are inherited from the default DateFormatSymbols for the locale.- See Also:
-
DateFormatSymbols
Fetches a custom calendar's DateFormatSymbols out of the given resource bundle. Symbols that are not overridden are inherited from the default DateFormatSymbols for the locale.- See Also:
-
-
Method Details
-
getInstance
Returns a DateFormatSymbols instance for the default locale. Unlikejava.text.DateFormatSymbols#getInstance
, this method simply returnsnew com.ibm.icu.text.DateFormatSymbols()
. ICU does not supportDateFormatSymbolsProvider
introduced in Java 6 or its equivalent implementation for now.- Returns:
- A DateFormatSymbols instance.
-
getInstance
Returns a DateFormatSymbols instance for the given locale. Unlikejava.text.DateFormatSymbols#getInstance
, this method simply returnsnew com.ibm.icu.text.DateFormatSymbols(locale)
. ICU does not supportDateFormatSymbolsProvider
introduced in Java 6 or its equivalent implementation for now.- Parameters:
locale
- the locale.- Returns:
- A DateFormatSymbols instance.
-
getInstance
Returns a DateFormatSymbols instance for the given locale. Unlikejava.text.DateFormatSymbols#getInstance
, this method simply returnsnew com.ibm.icu.text.DateFormatSymbols(locale)
. ICU does not supportDateFormatSymbolsProvider
introduced in Java 6 or its equivalent implementation for now.- Parameters:
locale
- the locale.- Returns:
- A DateFormatSymbols instance.
-
getAvailableLocales
Returns an array of all locales for which thegetInstance
methods of this class can return localized instances. Unlikejava.text.DateFormatSymbols#getAvailableLocales
, this method simply returns the array ofLocale
s available in this class. ICU does not supportDateFormatSymbolsProvider
introduced in Java 6 or its equivalent implementation for now.- Returns:
- An array of
Locale
s for which localizedDateFormatSymbols
instances are available.
-
getAvailableULocales
Returns an array of all locales for which thegetInstance
methods of this class can return localized instances. Unlikejava.text.DateFormatSymbols#getAvailableLocales
, this method simply returns the array ofULocale
s available in this class. ICU does not supportDateFormatSymbolsProvider
introduced in Java 6 or its equivalent implementation for now.- Returns:
- An array of
ULocale
s for which localizedDateFormatSymbols
instances are available.
-
getEras
Returns abbreviated era strings. For example: "AD" and "BC".- Returns:
- the era strings.
-
setEras
Sets abbreviated era strings. For example: "AD" and "BC".- Parameters:
newEras
- the new era strings.
-
getEraNames
Returns full era name strings. For example: "Anno Domini" and "Before Christ".- Returns:
- the era strings.
-
setEraNames
Sets full era name strings. For example: "Anno Domini" and "Before Christ".- Parameters:
newEraNames
- the new era strings.
-
getNarrowEras
Returns narrow era name strings. For example: "A" and "B".- Returns:
- the narrow era strings.
-
setNarrowEras
Sets narrow era name strings. For example: "A" and "B".- Parameters:
newNarrowEras
- the new narrow era strings.
-
getMonths
Returns month strings. For example: "January", "February", etc.- Returns:
- the month strings.
-
getMonths
Returns month strings. For example: "January", "February", etc.- Parameters:
context
- The month context, FORMAT or STANDALONE.width
- The width or the returned month string, either WIDE, ABBREVIATED, or NARROW.- Returns:
- the month strings.
-
setMonths
Sets month strings. For example: "January", "February", etc.- Parameters:
newMonths
- the new month strings.
-
setMonths
Sets month strings. For example: "January", "February", etc.- Parameters:
newMonths
- the new month strings.context
- The formatting context, FORMAT or STANDALONE.width
- The width of the month string, either WIDE, ABBREVIATED, or NARROW.
-
getShortMonths
Returns short month strings. For example: "Jan", "Feb", etc.- Returns:
- the short month strings.
-
setShortMonths
Sets short month strings. For example: "Jan", "Feb", etc.- Parameters:
newShortMonths
- the new short month strings.
-
getWeekdays
Returns wide weekday strings. For example: "Sunday", "Monday", etc.- Returns:
- the weekday strings. Use
Calendar.SUNDAY
,Calendar.MONDAY
, etc. to index the result array.
-
getWeekdays
Returns weekday strings. For example: "Sunday", "Monday", etc.- Parameters:
context
- Formatting context, either FORMAT or STANDALONE.width
- Width of strings to be returned, either WIDE, ABBREVIATED, SHORT, or NARROW- Returns:
- the weekday strings. Use
Calendar.SUNDAY
,Calendar.MONDAY
, etc. to index the result array.
-
setWeekdays
Sets weekday strings. For example: "Sunday", "Monday", etc.- Parameters:
newWeekdays
- The new weekday strings.context
- The formatting context, FORMAT or STANDALONE.width
- The width of the strings, either WIDE, ABBREVIATED, SHORT, or NARROW.
-
setWeekdays
Sets wide weekday strings. For example: "Sunday", "Monday", etc.- Parameters:
newWeekdays
- the new weekday strings. The array should be indexed byCalendar.SUNDAY
,Calendar.MONDAY
, etc.
-
getShortWeekdays
Returns abbreviated weekday strings; for example: "Sun", "Mon", etc. (Note: the method name is misleading; it does not get the CLDR-style "short" weekday strings, e.g. "Su", "Mo", etc.)- Returns:
- the abbreviated weekday strings. Use
Calendar.SUNDAY
,Calendar.MONDAY
, etc. to index the result array.
-
setShortWeekdays
Sets abbreviated weekday strings; for example: "Sun", "Mon", etc. (Note: the method name is misleading; it does not set the CLDR-style "short" weekday strings, e.g. "Su", "Mo", etc.)- Parameters:
newAbbrevWeekdays
- the new abbreviated weekday strings. The array should be indexed byCalendar.SUNDAY
,Calendar.MONDAY
, etc.
-
getQuarters
Returns quarter strings. For example: "1st Quarter", "2nd Quarter", etc.- Parameters:
context
- The quarter context, FORMAT or STANDALONE.width
- The width or the returned quarter string, WIDE, NARROW, or ABBREVIATED.- Returns:
- the quarter strings.
-
setQuarters
Sets quarter strings. For example: "1st Quarter", "2nd Quarter", etc.- Parameters:
newQuarters
- the new quarter strings.context
- The formatting context, FORMAT or STANDALONE.width
- The width of the quarter string, WIDE, NARROW, or ABBREVIATED.
-
getYearNames
Returns cyclic year name strings if the calendar has them, for example: "jia-zi", "yi-chou", etc.- Parameters:
context
- The usage context: FORMAT, STANDALONE.width
- The requested name width: WIDE, ABBREVIATED, SHORT, NARROW.- Returns:
- The year name strings, or null if they are not available for this calendar.
-
setYearNames
Sets cyclic year name strings, for example: "jia-zi", "yi-chou", etc.- Parameters:
yearNames
- The new cyclic year name strings.context
- The usage context: FORMAT, STANDALONE (currently only FORMAT is supported).width
- The name width: WIDE, ABBREVIATED, NARROW (currently only ABBREVIATED is supported).
-
getZodiacNames
Returns calendar zodiac name strings if the calendar has them, for example: "Rat", "Ox", "Tiger", etc.- Parameters:
context
- The usage context: FORMAT, STANDALONE.width
- The requested name width: WIDE, ABBREVIATED, SHORT, NARROW.- Returns:
- The zodiac name strings, or null if they are not available for this calendar.
-
setZodiacNames
Sets calendar zodiac name strings, for example: "Rat", "Ox", "Tiger", etc.- Parameters:
zodiacNames
- The new zodiac name strings.context
- The usage context: FORMAT, STANDALONE (currently only FORMAT is supported).width
- The name width: WIDE, ABBREVIATED, NARROW (currently only ABBREVIATED is supported).
-
getLeapMonthPattern
Deprecated.This API is ICU internal only.Returns the appropriate leapMonthPattern if the calendar has them, for example: "{0}bis"- Parameters:
context
- The usage context: FORMAT, STANDALONE, NUMERIC.width
- The requested pattern width: WIDE, ABBREVIATED, SHORT, NARROW.- Returns:
- The leapMonthPattern, or null if not available for this calendar.
-
setLeapMonthPattern
Deprecated.This API is ICU internal only.Sets a leapMonthPattern, for example: "{0}bis"- Parameters:
leapMonthPattern
- The new leapMonthPattern.context
- The usage context: FORMAT, STANDALONE, NUMERIC.width
- The name width: WIDE, ABBREVIATED, NARROW.
-
getAmPmStrings
Returns am/pm strings. For example: "AM" and "PM".- Returns:
- the weekday strings.
-
setAmPmStrings
Sets am/pm strings. For example: "AM" and "PM".- Parameters:
newAmpms
- the new ampm strings.
-
getTimeSeparatorString
Deprecated.This API is ICU internal only.Returns the time separator string. For example: ":".- Returns:
- the time separator string.
-
setTimeSeparatorString
Deprecated.This API is ICU internal only.Sets the time separator string. For example: ":".- Parameters:
newTimeSeparator
- the new time separator string.
-
getZoneStrings
Returns time zone strings.The array returned by this API is a two dimensional String array and each row contains at least following strings:
- ZoneStrings[n][0] - System time zone ID
- ZoneStrings[n][1] - Long standard time display name
- ZoneStrings[n][2] - Short standard time display name
- ZoneStrings[n][3] - Long daylight saving time display name
- ZoneStrings[n][4] - Short daylight saving time display name
null
.Note: ICU implements the time zone display name formatting algorithm specified by UTS#35 Unicode Locale Data Markup Language(LDML). The algorithm supports historic display name changes and various different types of names not available in
DateFormatSymbols.getZoneStrings()
. For accessing the full set of time zone string data used by ICU implementation, you should useTimeZoneNames
APIs instead.- Returns:
- the time zone strings.
-
setZoneStrings
Sets time zone strings.Note:
SimpleDateFormat
no longer uses the zone strings stored in aDateFormatSymbols
. Therefore, the time zone strings set by this method have no effects in an instance ofSimpleDateFormat
for formatting time zones. If you want to customize time zone display names formatted bySimpleDateFormat
, you should customizeTimeZoneFormat
and set the instance bySimpleDateFormat.setTimeZoneFormat(TimeZoneFormat)
instead.- Parameters:
newZoneStrings
- the new time zone strings.
-
getLocalPatternChars
Returns localized date-time pattern characters. For example: 'u', 't', etc.Note: ICU no longer provides localized date-time pattern characters for a locale starting ICU 3.8. This method returns the non-localized date-time pattern characters unless user defined localized data is set by setLocalPatternChars.
- Returns:
- the localized date-time pattern characters.
-
setLocalPatternChars
Sets localized date-time pattern characters. For example: 'u', 't', etc.- Parameters:
newLocalPatternChars
- the new localized date-time pattern characters.
-
clone
Overrides clone. -
hashCode
public int hashCode()Override hashCode. Generates a hash code for the DateFormatSymbols object. -
equals
Overrides equals. -
initializeData
Initializes format symbols for the locale and calendar type- Parameters:
desiredLocale
- The locale whose symbols are desired.type
- The calendar type whose date format symbols are desired.
-
initializeData
Initializes format symbols using another instance. TODO Clean up initialization methods for subclasses -
initializeData
@Deprecated protected void initializeData(ULocale desiredLocale, ICUResourceBundle b, String calendarType) Deprecated.This API is ICU internal only.Initializes format symbols for the locale and calendar type- Parameters:
desiredLocale
- The locale whose symbols are desired.b
- Resource bundle provided externallycalendarType
- The calendar type being used
-
arrayOfArrayEquals
-
loadDayPeriodStrings
Loads localized names for day periods in the requested format.- Parameters:
resourceMap
- Contains the dayPeriod resource to loadcopyFrom
- If non-null, any values in the result that would otherwise be null are copied from this array
-
duplicate
-
duplicate
-
getDateFormatBundle
@Deprecated public static ResourceBundle getDateFormatBundle(Class<? extends Calendar> calendarClass, Locale locale) throws MissingResourceException Deprecated.ICU 4.0Finds the ResourceBundle containing the date format information for a specified calendar subclass in a given locale.The resource bundle name is based on the calendar's fully-specified class name, with ".resources" inserted at the end of the package name (just before the class name) and "Symbols" appended to the end. For example, the bundle corresponding to "com.ibm.icu.util.HebrewCalendar" is "com.ibm.icu.impl.data.HebrewCalendarSymbols".
Note:Because of the structural changes in the ICU locale bundle, this API no longer works as described. This method always returns null.
- Throws:
MissingResourceException
-
getDateFormatBundle
@Deprecated public static ResourceBundle getDateFormatBundle(Class<? extends Calendar> calendarClass, ULocale locale) throws MissingResourceException Deprecated.ICU 4.0Finds the ResourceBundle containing the date format information for a specified calendar subclass in a given locale.The resource bundle name is based on the calendar's fully-specified class name, with ".resources" inserted at the end of the package name (just before the class name) and "Symbols" appended to the end. For example, the bundle corresponding to "com.ibm.icu.util.HebrewCalendar" is "com.ibm.icu.impl.data.HebrewCalendarSymbols".
Note:Because of the structural changes in the ICU locale bundle, this API no longer works as described. This method always returns null.
- Throws:
MissingResourceException
-
getDateFormatBundle
@Deprecated public static ResourceBundle getDateFormatBundle(Calendar cal, Locale locale) throws MissingResourceException Deprecated.ICU 4.0Variant of getDateFormatBundle(java.lang.Class, java.util.Locale) that takes a Calendar instance instead of a Calendar class.Note:Because of the structural changes in the ICU locale bundle, this API no longer works as described. This method always returns null.
-
getDateFormatBundle
@Deprecated public static ResourceBundle getDateFormatBundle(Calendar cal, ULocale locale) throws MissingResourceException Deprecated.ICU 4.0Variant of getDateFormatBundle(java.lang.Class, java.util.Locale) that takes a Calendar instance instead of a Calendar class.Note:Because of the structural changes in the ICU locale bundle, this API no longer works as described. This method always returns null.
-
getLocale
Returns the locale that was used to create this object, or null. This may may differ from the locale requested at the time of this object's creation. For example, if an object is created for locale en_US_CALIFORNIA, the actual data may be drawn from en (the actual locale), and en_US may be the most specific locale that exists (the valid locale).Note: This method will be implemented in ICU 3.0; ICU 2.8 contains a partial preview implementation. The actual locale is returned correctly, but the valid locale is not, in most cases.
- Parameters:
type
- type of information requested, eitherULocale.VALID_LOCALE
orULocale.ACTUAL_LOCALE
.- Returns:
- the information specified by type, or null if this object was not constructed from locale data.
- See Also:
-
setLocale
Sets information about the locales that were used to create this object. If the object was not constructed from locale data, both arguments should be set to null. Otherwise, neither should be null. The actual locale must be at the same level or less specific than the valid locale. This method is intended for use by factories or other entities that create objects of this class.- Parameters:
valid
- the most specific locale containing any resource data, or nullactual
- the locale containing data used to construct this object, or null- See Also:
-
readObject
3.8 or older version did not have localized GMT format patterns.- Throws:
IOException
ClassNotFoundException
-