public class

DateFormatSymbols

extends Object
implements Serializable Cloneable
java.lang.Object
   ↳ java.text.DateFormatSymbols

Class Overview

Encapsulates localized 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.

Direct use of DateFormatSymbols is likely to be less efficient because the implementation cannot make assumptions about user-supplied/user-modifiable data to the same extent that it can with its own built-in data.

Summary

Public Constructors
DateFormatSymbols()
Constructs a new DateFormatSymbols instance containing the symbols for the user's default locale.
DateFormatSymbols(Locale locale)
Constructs a new DateFormatSymbols instance containing the symbols for the specified locale.
Public Methods
Object clone()
Creates and returns a copy of this Object.
boolean equals(Object object)
Compares this object with the specified object and indicates if they are equal.
String[] getAmPmStrings()
Returns the array of strings which represent AM and PM.
static Locale[] getAvailableLocales()
Returns an array of locales for which custom DateFormatSymbols instances are available.
String[] getEras()
Returns the array of strings which represent BC and AD.
final static DateFormatSymbols getInstance()
Returns a new DateFormatSymbols instance for the user's default locale.
final static DateFormatSymbols getInstance(Locale locale)
Returns a new DateFormatSymbols for the given locale.
String getLocalPatternChars()
Returns the pattern characters used by SimpleDateFormat to specify date and time fields.
String[] getMonths()
Returns the array of strings containing the full names of the months.
String[] getShortMonths()
Returns the array of strings containing the abbreviated names of the months.
String[] getShortWeekdays()
Returns the array of strings containing the abbreviated names of the days of the week.
String[] getWeekdays()
Returns the array of strings containing the full names of the days of the week.
String[][] getZoneStrings()
Returns the two-dimensional array of strings containing localized names for time zones.
int hashCode()
Returns an integer hash code for this object.
void setAmPmStrings(String[] data)
Sets the array of strings which represent AM and PM.
void setEras(String[] data)
Sets the array of Strings which represent BC and AD.
void setLocalPatternChars(String data)
Sets the pattern characters used by SimpleDateFormat to specify date and time fields.
void setMonths(String[] data)
Sets the array of strings containing the full names of the months.
void setShortMonths(String[] data)
Sets the array of strings containing the abbreviated names of the months.
void setShortWeekdays(String[] data)
Sets the array of strings containing the abbreviated names of the days of the week.
void setWeekdays(String[] data)
Sets the array of strings containing the full names of the days of the week.
void setZoneStrings(String[][] zoneStrings)
Sets the two-dimensional array of strings containing localized names for time zones.
String toString()
Returns a string containing a concise, human-readable description of this object.
[Expand]
Inherited Methods
From class java.lang.Object

Public Constructors

public DateFormatSymbols ()

Since: API Level 1

Constructs a new DateFormatSymbols instance containing the symbols for the user's default locale. See "Be wary of the default locale".

public DateFormatSymbols (Locale locale)

Since: API Level 1

Constructs a new DateFormatSymbols instance containing the symbols for the specified locale.

Parameters
locale the locale.

Public Methods

public Object clone ()

Since: API Level 1

Creates and returns a copy of this Object. The default implementation returns a so-called "shallow" copy: It creates a new instance of the same class and then copies the field values (including object references) from this instance to the new instance. A "deep" copy, in contrast, would also recursively clone nested objects. A subclass that needs to implement this kind of cloning should call super.clone() to create the new instance and then create deep copies of the nested, mutable objects.

Returns
  • a copy of this object.

public boolean equals (Object object)

Since: API Level 1

Compares this object with the specified object and indicates if they are equal.

Parameters
object the object to compare with this object.
Returns
  • true if object is an instance of DateFormatSymbols and has the same symbols as this object, false otherwise.
See Also

public String[] getAmPmStrings ()

Since: API Level 1

Returns the array of strings which represent AM and PM. Use the Calendar constants Calendar.AM and Calendar.PM as indices for the array.

Returns
  • an array of strings.

public static Locale[] getAvailableLocales ()

Since: API Level 9

Returns an array of locales for which custom DateFormatSymbols instances are available.

Note that Android does not support user-supplied locale service providers.

public String[] getEras ()

Since: API Level 1

Returns the array of strings which represent BC and AD. Use the Calendar constants GregorianCalendar.BC and GregorianCalendar.AD as indices for the array.

Returns
  • an array of strings.

public static final DateFormatSymbols getInstance ()

Since: API Level 9

Returns a new DateFormatSymbols instance for the user's default locale. See "Be wary of the default locale".

Returns
  • an instance of DateFormatSymbols

public static final DateFormatSymbols getInstance (Locale locale)

Since: API Level 9

Returns a new DateFormatSymbols for the given locale.

Parameters
locale the locale
Returns
  • an instance of DateFormatSymbols
Throws
NullPointerException if locale == null

public String getLocalPatternChars ()

Since: API Level 1

Returns the pattern characters used by SimpleDateFormat to specify date and time fields.

Returns
  • a string containing the pattern characters.

public String[] getMonths ()

Since: API Level 1

Returns the array of strings containing the full names of the months. Use the Calendar constants Calendar.JANUARY etc. as indices for the array.

Returns
  • an array of strings.

public String[] getShortMonths ()

Since: API Level 1

Returns the array of strings containing the abbreviated names of the months. Use the Calendar constants Calendar.JANUARY etc. as indices for the array.

Returns
  • an array of strings.

public String[] getShortWeekdays ()

Since: API Level 1

Returns the array of strings containing the abbreviated names of the days of the week. Use the Calendar constants Calendar.SUNDAY etc. as indices for the array.

Returns
  • an array of strings.

public String[] getWeekdays ()

Since: API Level 1

Returns the array of strings containing the full names of the days of the week. Use the Calendar constants Calendar.SUNDAY etc. as indices for the array.

Returns
  • an array of strings.

public String[][] getZoneStrings ()

Since: API Level 1

Returns the two-dimensional array of strings containing localized names for time zones. Each row is an array of five strings:

  • The time zone ID, for example "America/Los_Angeles". This is not localized, and is used as a key into the table.
  • The long display name, for example "Pacific Standard Time".
  • The short display name, for example "PST".
  • The long display name for DST, for example "Pacific Daylight Time". This is the non-DST long name for zones that have never had DST, for example "Central Standard Time" for "Canada/Saskatchewan".
  • The short display name for DST, for example "PDT". This is the non-DST short name for zones that have never had DST, for example "CST" for "Canada/Saskatchewan".

public int hashCode ()

Since: API Level 1

Returns an integer hash code for this object. By contract, any two objects for which equals(Object) returns true must return the same hash code value. This means that subclasses of Object usually override both methods or neither method.

Note that hash values must not change over time unless information used in equals comparisons also changes.

See Writing a correct hashCode method if you intend implementing your own hashCode method.

Returns
  • this object's hash code.

public void setAmPmStrings (String[] data)

Since: API Level 1

Sets the array of strings which represent AM and PM. Use the Calendar constants Calendar.AM and Calendar.PM as indices for the array.

Parameters
data the array of strings for AM and PM.

public void setEras (String[] data)

Since: API Level 1

Sets the array of Strings which represent BC and AD. Use the Calendar constants GregorianCalendar.BC and GregorianCalendar.AD as indices for the array.

Parameters
data the array of strings for BC and AD.

public void setLocalPatternChars (String data)

Since: API Level 1

Sets the pattern characters used by SimpleDateFormat to specify date and time fields.

Parameters
data the string containing the pattern characters.
Throws
NullPointerException if data is null

public void setMonths (String[] data)

Since: API Level 1

Sets the array of strings containing the full names of the months. Use the Calendar constants Calendar.JANUARY etc. as indices for the array.

Parameters
data the array of strings.

public void setShortMonths (String[] data)

Since: API Level 1

Sets the array of strings containing the abbreviated names of the months. Use the Calendar constants Calendar.JANUARY etc. as indices for the array.

Parameters
data the array of strings.

public void setShortWeekdays (String[] data)

Since: API Level 1

Sets the array of strings containing the abbreviated names of the days of the week. Use the Calendar constants Calendar.SUNDAY etc. as indices for the array.

Parameters
data the array of strings.

public void setWeekdays (String[] data)

Since: API Level 1

Sets the array of strings containing the full names of the days of the week. Use the Calendar constants Calendar.SUNDAY etc. as indices for the array.

Parameters
data the array of strings.

public void setZoneStrings (String[][] zoneStrings)

Since: API Level 1

Sets the two-dimensional array of strings containing localized names for time zones. See getZoneStrings() for details.

Throws
IllegalArgumentException if any row has fewer than 5 elements.
NullPointerException if zoneStrings == null.

public String toString ()

Since: API Level 1

Returns a string containing a concise, human-readable description of this object. Subclasses are encouraged to override this method and provide an implementation that takes into account the object's type and data. The default implementation is equivalent to the following expression:

   getClass().getName() + '@' + Integer.toHexString(hashCode())

See Writing a useful toString method if you intend implementing your own toString method.

Returns
  • a printable representation of this object.