public class DateFormatSymbols
extends Object
implements Serializable, Cloneable
java.lang.Object | |
↳ | android.icu.text.DateFormatSymbols |
[icu enhancement] ICU's replacement for DateFormatSymbols
. Methods, fields, and other functionality specific to ICU are labeled '[icu]'.
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.
See also:
DateFormat
SimpleDateFormat
Constants |
|
---|---|
int |
ABBREVIATED [icu] Constant for width. |
int |
FORMAT [icu] Constant for context. |
int |
NARROW [icu] Constant for width. |
int |
SHORT [icu] Constant for width; only supported for weekdays. |
int |
STANDALONE [icu] Constant for context. |
int |
WIDE [icu] Constant for width. |
Public constructors |
|
---|---|
DateFormatSymbols() Constructs a DateFormatSymbols object by loading format data from resources for the default |
|
DateFormatSymbols(Locale locale) Constructs a DateFormatSymbols object by loading format data from resources for the given locale. |
|
DateFormatSymbols(ULocale locale) [icu] Constructs a DateFormatSymbols object by loading format data from resources for the given ulocale. |
|
DateFormatSymbols(Calendar cal, Locale locale) Returns the |
|
DateFormatSymbols(Calendar cal, ULocale locale) Returns the |
|
DateFormatSymbols(Class<? extends Calendar> calendarClass, Locale locale) Variant of DateFormatSymbols(Calendar, Locale) that takes the Calendar class instead of a Calendar instance. |
|
DateFormatSymbols(Class<? extends Calendar> calendarClass, ULocale locale) Variant of DateFormatSymbols(Calendar, ULocale) that takes the Calendar class instead of a Calendar instance. |
|
DateFormatSymbols(ResourceBundle bundle, Locale locale) Fetches a custom calendar's DateFormatSymbols out of the given resource bundle. |
|
DateFormatSymbols(ResourceBundle bundle, ULocale locale) Fetches a custom calendar's DateFormatSymbols out of the given resource bundle. |
Public methods |
|
---|---|
Object |
clone() Overrides clone. |
boolean |
equals(Object obj) Overrides equals. |
String[] |
getAmPmStrings() Returns am/pm strings. |
static Locale[] |
getAvailableLocales() Returns an array of all locales for which the |
String[] |
getEraNames() [icu] Returns era name strings. |
String[] |
getEras() Returns era strings. |
static DateFormatSymbols |
getInstance() Returns a DateFormatSymbols instance for the default locale. |
static DateFormatSymbols |
getInstance(Locale locale) Returns a DateFormatSymbols instance for the given locale. |
static DateFormatSymbols |
getInstance(ULocale locale) [icu] Returns a DateFormatSymbols instance for the given locale. |
String |
getLocalPatternChars() Returns localized date-time pattern characters. |
String[] |
getMonths(int context, int width) Returns month strings. |
String[] |
getMonths() Returns month strings. |
String[] |
getQuarters(int context, int width) [icu] Returns quarter strings. |
String[] |
getShortMonths() Returns short month strings. |
String[] |
getShortWeekdays() Returns abbreviated weekday strings; for example: "Sun", "Mon", etc. |
String[] |
getWeekdays(int context, int width) Returns weekday strings. |
String[] |
getWeekdays() Returns wide 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[][] |
getZoneStrings() Returns time zone strings. |
int |
hashCode() Override hashCode. |
void |
setAmPmStrings(String[] newAmpms) Sets am/pm strings. |
void |
setEraNames(String[] newEraNames) [icu] Sets era name strings. |
void |
setEras(String[] newEras) Sets era strings. |
void |
setLocalPatternChars(String newLocalPatternChars) Sets localized date-time pattern characters. |
void |
setMonths(String[] newMonths) Sets month strings. |
void |
setMonths(String[] newMonths, int context, int width) Sets month strings. |
void |
setQuarters(String[] newQuarters, int context, int width) [icu] 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 |
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. |
Protected methods |
|
---|---|
void |
initializeData(ULocale desiredLocale, String type) Initializes format symbols for the locale and calendar type |
Inherited methods |
|
---|---|
![]() java.lang.Object
|
int ABBREVIATED
[icu] Constant for width.
Constant Value: 0 (0x00000000)
int SHORT
[icu] Constant for width; only supported for weekdays.
Constant Value: 3 (0x00000003)
int STANDALONE
[icu] Constant for context.
Constant Value: 1 (0x00000001)
DateFormatSymbols ()
Constructs a DateFormatSymbols object by loading format data from resources for the default FORMAT
locale.
Throws | |
---|---|
MissingResourceException |
if the resources for the default locale cannot be found or cannot be loaded. |
See also:
DateFormatSymbols (Locale locale)
Constructs a DateFormatSymbols object by loading format data from resources for the given locale.
Parameters | |
---|---|
locale |
Locale
|
Throws | |
---|---|
MissingResourceException |
if the resources for the specified locale cannot be found or cannot be loaded. |
DateFormatSymbols (ULocale locale)
[icu] Constructs a DateFormatSymbols object by loading format data from resources for the given ulocale.
Parameters | |
---|---|
locale |
ULocale
|
Throws | |
---|---|
MissingResourceException |
if the resources for the specified locale cannot be found or cannot be loaded. |
DateFormatSymbols (Calendar cal, Locale locale)
Returns the DateFormatSymbols
object that should be used to format a calendar system's dates in the given locale.
Subclassing:
When creating a new Calendar subclass, you must create the ResourceBundle
containing its DateFormatSymbols
in a specific place. 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 "android.icu.util.HebrewCalendar" is "android.icu.impl.data.HebrewCalendarSymbols".
Within the ResourceBundle, this method searches for five keys:
DAY_OF_WEEK
field. Even though DAY_OF_WEEK
starts with SUNDAY
= 1, This array is 0-based; the name for Sunday goes in the first position, at index 0. If this key is not found in the bundle, the day names are inherited from the default DateFormatSymbols
for the requested locale. DateFormatSymbols
for the locale. MONTH
field. If this key is not found in the bundle, the month names are inherited from the default DateFormatSymbols
for the requested locale. DateFormatSymbols
for the locale. ERA
field. If this key is not found in the bundle, the era names are inherited from the default DateFormatSymbols
for the requested locale. Parameters | |
---|---|
cal |
Calendar : The calendar system whose date format symbols are desired. |
locale |
Locale : The locale whose symbols are desired. |
See also:
DateFormatSymbols (Calendar cal, ULocale locale)
Returns the DateFormatSymbols
object that should be used to format a calendar system's dates in the given locale.
Subclassing:
When creating a new Calendar subclass, you must create the ResourceBundle
containing its DateFormatSymbols
in a specific place. 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 "android.icu.util.HebrewCalendar" is "android.icu.impl.data.HebrewCalendarSymbols".
Within the ResourceBundle, this method searches for five keys:
DAY_OF_WEEK
field. Even though DAY_OF_WEEK
starts with SUNDAY
= 1, This array is 0-based; the name for Sunday goes in the first position, at index 0. If this key is not found in the bundle, the day names are inherited from the default DateFormatSymbols
for the requested locale. DateFormatSymbols
for the locale. MONTH
field. If this key is not found in the bundle, the month names are inherited from the default DateFormatSymbols
for the requested locale. DateFormatSymbols
for the locale. ERA
field. If this key is not found in the bundle, the era names are inherited from the default DateFormatSymbols
for the requested locale. Parameters | |
---|---|
cal |
Calendar : The calendar system whose date format symbols are desired. |
locale |
ULocale : The ulocale whose symbols are desired. |
See also:
DateFormatSymbols (Class<? extends Calendar> calendarClass, Locale locale)
Variant of DateFormatSymbols(Calendar, Locale) that takes the Calendar class instead of a Calendar instance.
Parameters | |
---|---|
calendarClass |
Class
|
locale |
Locale
|
See also:
DateFormatSymbols (Class<? extends Calendar> calendarClass, ULocale locale)
Variant of DateFormatSymbols(Calendar, ULocale) that takes the Calendar class instead of a Calendar instance.
Parameters | |
---|---|
calendarClass |
Class
|
locale |
ULocale
|
See also:
DateFormatSymbols (ResourceBundle bundle, Locale locale)
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.
Parameters | |
---|---|
bundle |
ResourceBundle
|
locale |
Locale
|
See also:
DateFormatSymbols (ResourceBundle bundle, ULocale locale)
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.
Parameters | |
---|---|
bundle |
ResourceBundle
|
locale |
ULocale
|
See also:
Object clone ()
Overrides clone.
Returns | |
---|---|
Object |
a clone of this instance. |
boolean equals (Object obj)
Overrides equals.
Parameters | |
---|---|
obj |
Object : the reference object with which to compare. |
Returns | |
---|---|
boolean |
true if this object is the same as the obj argument; false otherwise. |
String[] getAmPmStrings ()
Returns am/pm strings. For example: "AM" and "PM".
Returns | |
---|---|
String[] |
the weekday strings. |
Locale[] getAvailableLocales ()
Returns an array of all locales for which the getInstance
methods of this class can return localized instances. [icu] Note: Unlike java.text.DateFormatSymbols#getAvailableLocales
, this method simply returns the array of Locale
s available in this class. ICU does not support DateFormatSymbolsProvider
introduced in Java 6 or its equivalent implementation for now.
Returns | |
---|---|
Locale[] |
An array of Locale s for which localized DateFormatSymbols instances are available. |
String[] getEraNames ()
[icu] Returns era name strings. For example: "Anno Domini" and "Before Christ".
Returns | |
---|---|
String[] |
the era strings. |
String[] getEras ()
Returns era strings. For example: "AD" and "BC".
Returns | |
---|---|
String[] |
the era strings. |
DateFormatSymbols getInstance ()
Returns a DateFormatSymbols instance for the default locale. [icu] Note: Unlike java.text.DateFormatSymbols#getInstance
, this method simply returns new android.icu.text.DateFormatSymbols()
. ICU does not support DateFormatSymbolsProvider
introduced in Java 6 or its equivalent implementation for now.
Returns | |
---|---|
DateFormatSymbols |
A DateFormatSymbols instance. |
DateFormatSymbols getInstance (Locale locale)
Returns a DateFormatSymbols instance for the given locale. [icu] Note: Unlike java.text.DateFormatSymbols#getInstance
, this method simply returns new android.icu.text.DateFormatSymbols(locale)
. ICU does not support DateFormatSymbolsProvider
introduced in Java 6 or its equivalent implementation for now.
Parameters | |
---|---|
locale |
Locale : the locale. |
Returns | |
---|---|
DateFormatSymbols |
A DateFormatSymbols instance. |
DateFormatSymbols getInstance (ULocale locale)
[icu] Returns a DateFormatSymbols instance for the given locale. [icu] Note: Unlike java.text.DateFormatSymbols#getInstance
, this method simply returns new android.icu.text.DateFormatSymbols(locale)
. ICU does not support DateFormatSymbolsProvider
introduced in Java 6 or its equivalent implementation for now.
Parameters | |
---|---|
locale |
ULocale : the locale. |
Returns | |
---|---|
DateFormatSymbols |
A DateFormatSymbols instance. |
String 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 | |
---|---|
String |
the localized date-time pattern characters. |
String[] getMonths (int context, int width)
Returns month strings. For example: "January", "February", etc.
Parameters | |
---|---|
context |
int : The month context, FORMAT or STANDALONE. |
width |
int : The width or the returned month string, either WIDE, ABBREVIATED, or NARROW. |
Returns | |
---|---|
String[] |
the month strings. |
String[] getMonths ()
Returns month strings. For example: "January", "February", etc.
Returns | |
---|---|
String[] |
the month strings. |
String[] getQuarters (int context, int width)
[icu] Returns quarter strings. For example: "1st Quarter", "2nd Quarter", etc.
Parameters | |
---|---|
context |
int : The quarter context, FORMAT or STANDALONE. |
width |
int : The width or the returned quarter string, either WIDE or ABBREVIATED. There are no NARROW quarters. |
Returns | |
---|---|
String[] |
the quarter strings. |
String[] getShortMonths ()
Returns short month strings. For example: "Jan", "Feb", etc.
Returns | |
---|---|
String[] |
the short month strings. |
String[] 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 | |
---|---|
String[] |
the abbreviated weekday strings. Use Calendar.SUNDAY , Calendar.MONDAY , etc. to index the result array. |
String[] getWeekdays (int context, int width)
Returns weekday strings. For example: "Sunday", "Monday", etc.
Parameters | |
---|---|
context |
int : Formatting context, either FORMAT or STANDALONE. |
width |
int : Width of strings to be returned, either WIDE, ABBREVIATED, SHORT, or NARROW |
Returns | |
---|---|
String[] |
the weekday strings. Use Calendar.SUNDAY , Calendar.MONDAY , etc. to index the result array. |
String[] getWeekdays ()
Returns wide weekday strings. For example: "Sunday", "Monday", etc.
Returns | |
---|---|
String[] |
the weekday strings. Use Calendar.SUNDAY , Calendar.MONDAY , etc. to index the result array. |
String[] getYearNames (int context, int width)
Returns cyclic year name strings if the calendar has them, for example: "jia-zi", "yi-chou", etc.
Parameters | |
---|---|
context |
int : The usage context: FORMAT, STANDALONE. |
width |
int : The requested name width: WIDE, ABBREVIATED, SHORT, NARROW. |
Returns | |
---|---|
String[] |
The year name strings, or null if they are not available for this calendar. |
String[] getZodiacNames (int context, int width)
Returns calendar zodiac name strings if the calendar has them, for example: "Rat", "Ox", "Tiger", etc.
Parameters | |
---|---|
context |
int : The usage context: FORMAT, STANDALONE. |
width |
int : The requested name width: WIDE, ABBREVIATED, SHORT, NARROW. |
Returns | |
---|---|
String[] |
The zodiac name strings, or null if they are not available for this calendar. |
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:
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 getZoneStrings()
. For accessing the full set of time zone string data used by ICU implementation, you should use TimeZoneNames
APIs instead.
Returns | |
---|---|
String[][] |
the time zone strings. |
int hashCode ()
Override hashCode. Generates a hash code for the DateFormatSymbols object.
Returns | |
---|---|
int |
a hash code value for this object. |
void setAmPmStrings (String[] newAmpms)
Sets am/pm strings. For example: "AM" and "PM".
Parameters | |
---|---|
newAmpms |
String : the new ampm strings. |
void setEraNames (String[] newEraNames)
[icu] Sets era name strings. For example: "Anno Domini" and "Before Christ".
Parameters | |
---|---|
newEraNames |
String : the new era strings. |
void setEras (String[] newEras)
Sets era strings. For example: "AD" and "BC".
Parameters | |
---|---|
newEras |
String : the new era strings. |
void setLocalPatternChars (String newLocalPatternChars)
Sets localized date-time pattern characters. For example: 'u', 't', etc.
Parameters | |
---|---|
newLocalPatternChars |
String : the new localized date-time pattern characters. |
void setMonths (String[] newMonths)
Sets month strings. For example: "January", "February", etc.
Parameters | |
---|---|
newMonths |
String : the new month strings. |
void setMonths (String[] newMonths, int context, int width)
Sets month strings. For example: "January", "February", etc.
Parameters | |
---|---|
newMonths |
String : the new month strings. |
context |
int : The formatting context, FORMAT or STANDALONE. |
width |
int : The width of the month string, either WIDE, ABBREVIATED, or NARROW. |
void setQuarters (String[] newQuarters, int context, int width)
[icu] Sets quarter strings. For example: "1st Quarter", "2nd Quarter", etc.
Parameters | |
---|---|
newQuarters |
String : the new quarter strings. |
context |
int : The formatting context, FORMAT or STANDALONE. |
width |
int : The width of the quarter string, either WIDE or ABBREVIATED. There are no NARROW quarters. |
void setShortMonths (String[] newShortMonths)
Sets short month strings. For example: "Jan", "Feb", etc.
Parameters | |
---|---|
newShortMonths |
String : the new short month strings. |
void setShortWeekdays (String[] newAbbrevWeekdays)
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 |
String : the new abbreviated weekday strings. The array should be indexed by Calendar.SUNDAY , Calendar.MONDAY , etc. |
void setWeekdays (String[] newWeekdays)
Sets wide weekday strings. For example: "Sunday", "Monday", etc.
Parameters | |
---|---|
newWeekdays |
String : the new weekday strings. The array should be indexed by Calendar.SUNDAY , Calendar.MONDAY , etc. |
void setWeekdays (String[] newWeekdays, int context, int width)
Sets weekday strings. For example: "Sunday", "Monday", etc.
Parameters | |
---|---|
newWeekdays |
String : The new weekday strings. |
context |
int : The formatting context, FORMAT or STANDALONE. |
width |
int : The width of the strings, either WIDE, ABBREVIATED, SHORT, or NARROW. |
void setYearNames (String[] yearNames, int context, int width)
Sets cyclic year name strings, for example: "jia-zi", "yi-chou", etc.
Parameters | |
---|---|
yearNames |
String : The new cyclic year name strings. |
context |
int : The usage context: FORMAT, STANDALONE (currently only FORMAT is supported). |
width |
int : The name width: WIDE, ABBREVIATED, NARROW (currently only ABBREVIATED is supported). |
void setZodiacNames (String[] zodiacNames, int context, int width)
Sets calendar zodiac name strings, for example: "Rat", "Ox", "Tiger", etc.
Parameters | |
---|---|
zodiacNames |
String : The new zodiac name strings. |
context |
int : The usage context: FORMAT, STANDALONE (currently only FORMAT is supported). |
width |
int : The name width: WIDE, ABBREVIATED, NARROW (currently only ABBREVIATED is supported). |
void setZoneStrings (String[][] newZoneStrings)
Sets time zone strings.
Note: SimpleDateFormat
no longer uses the zone strings stored in a DateFormatSymbols
. Therefore, the time zone strings set by this method have no effects in an instance of SimpleDateFormat
for formatting time zones. If you want to customize time zone display names formatted by SimpleDateFormat
, you should customize TimeZoneFormat
and set the instance by setTimeZoneFormat(TimeZoneFormat)
instead.
Parameters | |
---|---|
newZoneStrings |
String : the new time zone strings. |
void initializeData (ULocale desiredLocale, String type)
Initializes format symbols for the locale and calendar type
Parameters | |
---|---|
desiredLocale |
ULocale : The locale whose symbols are desired. |
type |
String : The calendar type whose date format symbols are desired. |