| java.lang.Object | ||
| ↳ | java.text.Format | |
| ↳ | java.text.DateFormat | |
|  Known Direct Subclasses | 
An abstract class for date/time formatting subclasses which formats and parses dates or time in a language-independent manner. The date/time formatting subclass, such as SimpleDateFormat, allows for formatting (i.e., date -> text), parsing (text -> date), and normalization. The date is represented as a Date object or as the milliseconds since January 1, 1970, 00:00:00 GMT. 
DateFormat provides many class methods for obtaining default date/time formatters based on the default or a given locale and a number of formatting styles. The formatting styles include FULL, LONG, MEDIUM, and SHORT. More details and examples for using these styles are provided in the method descriptions.
 DateFormat helps you to format and parse dates for any locale. Your code can be completely independent of the locale conventions for months, days of the week, or even the calendar format: lunar vs. solar. 
To format a date for the current Locale, use one of the static factory methods:
myString = DateFormat.getDateInstance().format(myDate);
If you are formatting multiple dates, it is more efficient to get the format and use it multiple times so that the system doesn't have to fetch the information about the local language and country conventions multiple times.
 
       
 DateFormat df = DateFormat.getDateInstance();
 for (int i = 0; i < a.length; ++i) {
     output.println(df.format(myDate[i]) + "; ");
 }
  
       
       To format a number for a different locale, specify it in the call to getDateInstance: 
DateFormat df = DateFormat.getDateInstance(DateFormat.LONG, Locale.FRANCE);
 DateFormat can also be used to parse strings: 
myDate = df.parse(myString);
 Use getDateInstance to get the normal date format for a country. Other static factory methods are available: Use getTimeInstance to get the time format for a country. Use getDateTimeInstance to get the date and time format. You can pass in different options to these factory methods to control the length of the result; from SHORT to MEDIUM to LONG to FULL. The exact result depends on the locale, but generally: 
 If needed, the time zone can be set on the format. For even greater control over the formatting or parsing, try casting the DateFormat you get from the factory methods to a SimpleDateFormat. This will work for the majority of countries; just remember to put it in a try block in case you encounter an unusual one. 
 There are versions of the parse and format methods which use ParsePosition and FieldPosition to allow you to 
Date formats are not synchronized. It is recommended to create separate format instances for each thread. If multiple threads access a format concurrently, it must be synchronized externally.
| Nested Classes | |||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|
|  | DateFormat.Field | The instances of this inner class are used as attribute keys and values in AttributedCharacterIteratorthat theformatToCharacterIterator(Object)method returns. | |||||||||
| Constants | |||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|
| int | AM_PM_FIELD | FieldPosition selector for 'a' field alignment, corresponds to the AM_PMfield. | |||||||||
| int | DATE_FIELD | The FieldPositionselector for 'd' field alignment, corresponds to theDATEfield. | |||||||||
| int | DAY_OF_WEEK_FIELD | FieldPosition selector for 'E' field alignment, corresponds to the DAY_OF_WEEKfield. | |||||||||
| int | DAY_OF_WEEK_IN_MONTH_FIELD | FieldPosition selector for 'F' field alignment, corresponds to the DAY_OF_WEEK_IN_MONTHfield. | |||||||||
| int | DAY_OF_YEAR_FIELD | FieldPosition selector for 'D' field alignment, corresponds to the DAY_OF_YEARfield. | |||||||||
| int | DEFAULT | The format style constant defining the default format style. | |||||||||
| int | ERA_FIELD | The FieldPositionselector for 'G' field alignment, corresponds to theERAfield. | |||||||||
| int | FULL | The format style constant defining the full style. | |||||||||
| int | HOUR0_FIELD | The FieldPositionselector for 'K' field alignment, corresponding to theHOURfield. | |||||||||
| int | HOUR1_FIELD | FieldPosition selector for 'h' field alignment, corresponding to the HOURfield. | |||||||||
| int | HOUR_OF_DAY0_FIELD | The FieldPositionselector for 'H' field alignment, corresponds to theHOUR_OF_DAYfield. | |||||||||
| int | HOUR_OF_DAY1_FIELD | The FieldPositionselector for 'k' field alignment, corresponds to theHOUR_OF_DAYfield. | |||||||||
| int | LONG | The format style constant defining the long style. | |||||||||
| int | MEDIUM | The format style constant defining the medium style. | |||||||||
| int | MILLISECOND_FIELD | FieldPosition selector for 'S' field alignment, corresponds to the MILLISECONDfield. | |||||||||
| int | MINUTE_FIELD | FieldPosition selector for 'm' field alignment, corresponds to the MINUTEfield. | |||||||||
| int | MONTH_FIELD | The FieldPositionselector for 'M' field alignment, corresponds to theMONTHfield. | |||||||||
| int | SECOND_FIELD | FieldPosition selector for 's' field alignment, corresponds to the SECONDfield. | |||||||||
| int | SHORT | The format style constant defining the short style. | |||||||||
| int | TIMEZONE_FIELD | The FieldPositionselector for 'z' field alignment, corresponds to theZONE_OFFSETandDST_OFFSETfields. | |||||||||
| int | WEEK_OF_MONTH_FIELD | FieldPosition selector for 'W' field alignment, corresponds to the WEEK_OF_MONTHfield. | |||||||||
| int | WEEK_OF_YEAR_FIELD | FieldPosition selector for 'w' field alignment, corresponds to the WEEK_OF_YEARfield. | |||||||||
| int | YEAR_FIELD | The FieldPositionselector for 'y' field alignment, corresponds to theYEARfield. | |||||||||
| Fields | |||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|
|  | calendar | The calendar that this DateFormatuses to format a number representing a date. | |||||||||
|  | numberFormat | The number format used to format a number. | |||||||||
| Protected Constructors | |||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|
|  | 
           Constructs a new instance of 
            DateFormat. | ||||||||||
| Public Methods | |||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|
|  | 
           Returns a new instance of 
            DateFormatwith the same properties. | ||||||||||
|  | 
           Compares this date format with the specified object and indicates if they are equal.
           | ||||||||||
|  | 
           Formats the specified date as a string using the pattern of this date format and appends the string to the specified string buffer.
           | ||||||||||
|  | 
           Formats the specified object as a string using the pattern of this date format and appends the string to the specified string buffer.
           | ||||||||||
|  | 
           Formats the specified date using the rules of this date format.
           | ||||||||||
|  | 
           Returns an array of locales for which custom 
            DateFormatinstances are available. | ||||||||||
|  | 
           Returns the calendar used by this 
            DateFormat. | ||||||||||
|  | 
           Returns a 
            DateFormatinstance for formatting and parsing dates in the specified style for the user's default locale. | ||||||||||
|  | 
           Returns a 
            DateFormatinstance for formatting and parsing dates in the specified style for the specified locale. | ||||||||||
|  | 
           Returns a 
            DateFormatinstance for formatting and parsing dates in the DEFAULT style for the default locale. | ||||||||||
|  | 
           Returns a 
            DateFormatinstance for formatting and parsing dates and time values in the specified styles for the specified locale. | ||||||||||
|  | 
           Returns a 
            DateFormatinstance for formatting and parsing of both dates and time values in the manner appropriate for the user's default locale. | ||||||||||
|  | 
           Returns a 
            DateFormatinstance for formatting and parsing dates and time values in the DEFAULT style for the default locale. | ||||||||||
|  | 
           Returns a 
            DateFormatinstance for formatting and parsing dates and times in the SHORT style for the default locale. | ||||||||||
|  | 
           Returns the 
            NumberFormatused by thisDateFormat. | ||||||||||
|  | 
           Returns a 
            DateFormatinstance for formatting and parsing time values in the specified style for the user's default locale. | ||||||||||
|  | 
           Returns a 
            DateFormatinstance for formatting and parsing time values in the DEFAULT style for the default locale. | ||||||||||
|  | 
           Returns a 
            DateFormatinstance for formatting and parsing time values in the specified style for the specified locale. | ||||||||||
|  | 
           Returns the time zone of this date format's calendar.
           | ||||||||||
|  | 
           Returns an integer hash code for this object.
           | ||||||||||
|  | 
           Indicates whether the calendar used by this date format is lenient.
           | ||||||||||
|  | 
           Parses a date from the specified string using the rules of this date format.
           | ||||||||||
|  | 
           Parses a date from the specified string starting at the index specified by 
            position. | ||||||||||
|  | 
           Parses a date from the specified string starting at the index specified by 
            position. | ||||||||||
|  | 
           Sets the calendar used by this date format.
           | ||||||||||
|  | 
           Specifies whether or not date/time parsing shall be lenient.
           | ||||||||||
|  | 
           Sets the 
            NumberFormatused by this date format. | ||||||||||
|  | 
           Sets the time zone of the calendar used by this date format.
           | ||||||||||
| [Expand] 
           Inherited Methods
           | |||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|
|  From class java.text.Format | |||||||||||
|  From class java.lang.Object | |||||||||||
FieldPosition selector for 'a' field alignment, corresponds to the AM_PM field. 
The FieldPosition selector for 'd' field alignment, corresponds to the DATE field. 
FieldPosition selector for 'E' field alignment, corresponds to the DAY_OF_WEEK field. 
FieldPosition selector for 'F' field alignment, corresponds to the DAY_OF_WEEK_IN_MONTH field. 
FieldPosition selector for 'D' field alignment, corresponds to the DAY_OF_YEAR field. 
The format style constant defining the default format style. The default is MEDIUM.
The FieldPosition selector for 'G' field alignment, corresponds to the ERA field. 
The format style constant defining the full style.
The FieldPosition selector for 'K' field alignment, corresponding to the HOUR field. 
FieldPosition selector for 'h' field alignment, corresponding to the HOUR field. 
The FieldPosition selector for 'H' field alignment, corresponds to the HOUR_OF_DAY field. HOUR_OF_DAY0_FIELD is used for the zero-based 24-hour clock. For example, 23:59 + 01:00 results in 00:59. 
The FieldPosition selector for 'k' field alignment, corresponds to the HOUR_OF_DAY field. HOUR_OF_DAY1_FIELD is used for the one-based 24-hour clock. For example, 23:59 + 01:00 results in 24:59. 
The format style constant defining the long style.
The format style constant defining the medium style.
FieldPosition selector for 'S' field alignment, corresponds to the MILLISECOND field. 
FieldPosition selector for 'm' field alignment, corresponds to the MINUTE field. 
The FieldPosition selector for 'M' field alignment, corresponds to the MONTH field. 
FieldPosition selector for 's' field alignment, corresponds to the SECOND field. 
The format style constant defining the short style.
The FieldPosition selector for 'z' field alignment, corresponds to the ZONE_OFFSET and DST_OFFSET fields. 
FieldPosition selector for 'W' field alignment, corresponds to the WEEK_OF_MONTH field. 
FieldPosition selector for 'w' field alignment, corresponds to the WEEK_OF_YEAR field. 
The FieldPosition selector for 'y' field alignment, corresponds to the YEAR field. 
The calendar that this DateFormat uses to format a number representing a date. 
Returns a new instance of DateFormat with the same properties. 
Compares this date format with the specified object and indicates if they are equal.
| object | the object to compare with this date format. | 
|---|
true if object is a DateFormat object and it has the same properties as this date format; false otherwise.Formats the specified date as a string using the pattern of this date format and appends the string to the specified string buffer.
 If the field member of field contains a value specifying a format field, then its beginIndex and endIndex members will be updated with the position of the first occurrence of this field in the formatted text.
| date | the date to format. | 
|---|---|
| buffer | the target string buffer to append the formatted date/time to. | 
| field | on input: an optional alignment field; on output: the offsets of the alignment field in the formatted text. | 
Formats the specified object as a string using the pattern of this date format and appends the string to the specified string buffer.
 If the field member of field contains a value specifying a format field, then its beginIndex and endIndex members will be updated with the position of the first occurrence of this field in the formatted text.
| object | the source object to format, must be a Dateor aNumber. Ifobjectis a number then a date is constructed using thelongValue()of the number. | 
|---|---|
| buffer | the target string buffer to append the formatted date/time to. | 
| field | on input: an optional alignment field; on output: the offsets of the alignment field in the formatted text. | 
| IllegalArgumentException | if objectis neither aDatenor aNumberinstance. | 
|---|
Formats the specified date using the rules of this date format.
| date | the date to format. | 
|---|
Returns an array of locales for which custom DateFormat instances are available. 
Note that Android does not support user-supplied locale service providers.
Returns the calendar used by this DateFormat.
Returns a DateFormat instance for formatting and parsing dates in the specified style for the user's default locale. See "Be wary of the default locale".
| style | one of SHORT, MEDIUM, LONG, FULL, or DEFAULT. | 
|---|
DateFormat instance for style and the default locale.| IllegalArgumentException | if styleis not one of SHORT, MEDIUM, LONG, FULL, or DEFAULT. | 
|---|
Returns a DateFormat instance for formatting and parsing dates in the specified style for the specified locale.
| style | one of SHORT, MEDIUM, LONG, FULL, or DEFAULT. | 
|---|---|
| locale | the locale. | 
DateFormat instance for style and locale. | IllegalArgumentException | if styleis not one of SHORT, MEDIUM, LONG, FULL, or DEFAULT. | 
|---|
Returns a DateFormat instance for formatting and parsing dates in the DEFAULT style for the default locale.
DateFormat instance for the default style and locale. Returns a DateFormat instance for formatting and parsing dates and time values in the specified styles for the specified locale.
| dateStyle | one of SHORT, MEDIUM, LONG, FULL, or DEFAULT. | 
|---|---|
| timeStyle | one of SHORT, MEDIUM, LONG, FULL, or DEFAULT. | 
| locale | the locale. | 
DateFormat instance for dateStyle, timeStyle and locale.| IllegalArgumentException | if dateStyleortimeStyleis not one of SHORT, MEDIUM, LONG, FULL, or DEFAULT. | 
|---|
Returns a DateFormat instance for formatting and parsing of both dates and time values in the manner appropriate for the user's default locale. See "Be wary of the default locale".
| dateStyle | one of SHORT, MEDIUM, LONG, FULL, or DEFAULT. | 
|---|---|
| timeStyle | one of SHORT, MEDIUM, LONG, FULL, or DEFAULT. | 
DateFormat instance for dateStyle, timeStyle and the default locale.| IllegalArgumentException | if dateStyleortimeStyleis not one of SHORT, MEDIUM, LONG, FULL, or DEFAULT. | 
|---|
Returns a DateFormat instance for formatting and parsing dates and time values in the DEFAULT style for the default locale.
DateFormat instance for the default style and locale. Returns a DateFormat instance for formatting and parsing dates and times in the SHORT style for the default locale.
DateFormat instance for the SHORT style and default locale. Returns the NumberFormat used by this DateFormat.
NumberFormat used by this date format. Returns a DateFormat instance for formatting and parsing time values in the specified style for the user's default locale. See "Be wary of the default locale".
| style | one of SHORT, MEDIUM, LONG, FULL, or DEFAULT. | 
|---|
DateFormat instance for style and the default locale.| IllegalArgumentException | if styleis not one of SHORT, MEDIUM, LONG, FULL, or DEFAULT. | 
|---|
Returns a DateFormat instance for formatting and parsing time values in the DEFAULT style for the default locale.
DateFormat instance for the default style and locale. Returns a DateFormat instance for formatting and parsing time values in the specified style for the specified locale.
| style | one of SHORT, MEDIUM, LONG, FULL, or DEFAULT. | 
|---|---|
| locale | the locale. | 
DateFormat instance for style and locale. | IllegalArgumentException | if styleis not one of SHORT, MEDIUM, LONG, FULL, or DEFAULT. | 
|---|
Returns the time zone of this date format's calendar.
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.
Indicates whether the calendar used by this date format is lenient.
true if the calendar is lenient; false otherwise. Parses a date from the specified string using the rules of this date format.
| string | the string to parse. | 
|---|
Date resulting from the parsing.| ParseException | if an error occurs during parsing. | 
|---|
Parses a date from the specified string starting at the index specified by position. If the string is successfully parsed then the index of the ParsePosition is updated to the index following the parsed text. On error, the index is unchanged and the error index of ParsePosition is set to the index where the error occurred. 
 By default, parsing is lenient: If the input is not in the form used by this object's format method but can still be parsed as a date, then the parse succeeds. Clients may insist on strict adherence to the format by calling setLenient(false).
| string | the string to parse. | 
|---|---|
| position | input/output parameter, specifies the start index in stringfrom where to start parsing. If parsing is successful, it is updated with the index following the parsed text; on error, the index is unchanged and the error index is set to the index where the error occurred. | 
null if there is an error. Parses a date from the specified string starting at the index specified by position. If the string is successfully parsed then the index of the ParsePosition is updated to the index following the parsed text. On error, the index is unchanged and the error index of ParsePosition is set to the index where the error occurred. 
 By default, parsing is lenient: If the input is not in the form used by this object's format method but can still be parsed as a date, then the parse succeeds. Clients may insist on strict adherence to the format by calling setLenient(false).
| string | the string to parse. | 
|---|---|
| position | input/output parameter, specifies the start index in stringfrom where to start parsing. If parsing is successful, it is updated with the index following the parsed text; on error, the index is unchanged and the error index is set to the index where the error occurred. | 
null if there is an error. Sets the calendar used by this date format.
| cal | the new calendar. | 
|---|
Specifies whether or not date/time parsing shall be lenient. With lenient parsing, the parser may use heuristics to interpret inputs that do not precisely match this object's format. With strict parsing, inputs must match this object's format.
| value | trueto set the calendar to be lenient,falseotherwise. | 
|---|
Sets the NumberFormat used by this date format.
| format | the new number format. | 
|---|
Sets the time zone of the calendar used by this date format.
| timezone | the new time zone. | 
|---|