DateFormat
public
abstract
class
DateFormat
extends UFormat
java.lang.Object | |||
↳ | java.text.Format | ||
↳ | android.icu.text.UFormat | ||
↳ | android.icu.text.DateFormat |
[icu enhancement] ICU's replacement for DateFormat
. Methods, fields, and other functionality specific to ICU are labeled '[icu]'.
DateFormat is 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 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. It provides many class methods for obtaining default date/time formatters based on the default for a given locale and a number of formatting styles or arbitrary "skeletons".
- The formatting styles include FULL, LONG, MEDIUM, and SHORT. More detail and examples of using these styles are provided in the method descriptions.
- The formatting styles only cover a fraction of the necessary usage. You often need to have just certain
combinations of fields, like Month and Year, but have it to be formatted appropriate to a given locale. This is done
using the (misnamed) getPatternInstance() method, supplying a skeleton. There are a number of constants that have
common pre-defined skeletons, such as
MINUTE_SECOND
for something like "13:45" orYEAR_ABBR_MONTH
for something like "Sept 2012".
To format a date for the current Locale, use one of the static factory methods:
myString = DateFormat.getDateInstance().format(myDate); myString = DateFormat.getPatternInstance(DateFormat.YEAR_ABBR_MONTH).format(myDate);
If you are formatting multiple numbers, 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 date for a different Locale, specify it in the call to getDateInstance().
DateFormat df = DateFormat.getDateInstance(DateFormat.LONG, Locale.FRANCE);
You can use a DateFormat to parse also.
myDate = df.parse(myString);
There are many static factory methods available. Use getDateInstance to get the normal date format for that country. Use getTimeInstance to get the time format for that country. Use getDateTimeInstance to get a 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:
- SHORT is completely numeric, such as 12.13.52 or 3:30pm
- MEDIUM is longer, such as Jan 12, 1952
- LONG is longer, such as January 12, 1952 or 3:30:32pm
- FULL is pretty completely specified, such as Tuesday, April 12, 1952 AD or 3:30:42pm PST.
Use getPatternInstance to format with a skeleton. Typically this is with a predefined skeleton, like
YEAR_ABBR_MONTH
for something like "Sept 2012". If you don't want to use one of the predefined skeletons,
you can supply your own. The skeletons are like the patterns in SimpleDateFormat, except they:
- only keep the field pattern letter and ignore all other parts in a pattern, such as space, punctuation, and string literals.
- are independent of the order of fields.
- ignore certain differences in the field's pattern letter length:
- For those non-digit calendar fields, the pattern letter length is important, such as MMM, MMMM, and MMMMM; E and EEEE, and the field's pattern letter length is honored.
- For the digit calendar fields, such as M or MM, d or dd, yy or yyyy, the field pattern length is ignored and the best match, which is defined in date time patterns, will be returned without honor the field pattern letter length in skeleton.
You can also set the time zone on the format if you wish. If you want even more control over the format or parsing, (or want to give your users more control), you can 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.
You can also use forms of the parse and format methods with ParsePosition and FieldPosition to allow you to
- progressively parse through pieces of a string.
- align any particular field, or find out where it is for selection on the screen.
Synchronization
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.Summary
Nested classes | |
---|---|
class |
DateFormat.Field
The instances of this inner class are used as attribute keys and values in AttributedCharacterIterator that DateFormat.formatToCharacterIterator() method returns. |
Constants | |
---|---|
String |
ABBR_GENERIC_TZ
[icu] Constant for generic non-location format, abbreviated if possible, such as PT; used in combinations date + time + zone, or time + zone. |
String |
ABBR_MONTH
[icu] Constant for date skeleton with abbreviated month. |
String |
ABBR_MONTH_DAY
[icu] Constant for date skeleton with abbreviated month and day. |
String |
ABBR_MONTH_WEEKDAY_DAY
[icu] Constant for date skeleton with abbreviated month, weekday, and day. |
String |
ABBR_QUARTER
[icu] Constant for date skeleton with abbreviated quarter. |
String |
ABBR_SPECIFIC_TZ
[icu] Constant for specific non-location format, abbreviated if possible, such as PDT; used in combinations date + time + zone, or time + zone. |
String |
ABBR_UTC_TZ
[icu] Constant for localized GMT/UTC format, such as GMT+8:00 or HPG-8:00; used in combinations date + time + zone, or time + zone. |
String |
ABBR_WEEKDAY
[icu] Constant for date skeleton with abbreviated weekday. |
int |
AM_PM_FIELD
FieldPosition selector for 'a' field alignment,
corresponding to the |
int |
AM_PM_MIDNIGHT_NOON_FIELD
[icu] FieldPosition selector for 'b' field alignment. |
int |
DATE_FIELD
FieldPosition selector for 'd' field alignment,
corresponding to the |
String |
DAY
[icu] Constant for date skeleton with day. |
int |
DAY_OF_WEEK_FIELD
FieldPosition selector for 'E' field alignment,
corresponding to the |
int |
DAY_OF_WEEK_IN_MONTH_FIELD
FieldPosition selector for 'F' field alignment,
corresponding to the |
int |
DAY_OF_YEAR_FIELD
FieldPosition selector for 'D' field alignment,
corresponding to the |
int |
DEFAULT
Constant for default style pattern. |
int |
DOW_LOCAL_FIELD
[icu] FieldPosition selector for 'e' field alignment,
corresponding to the |
int |
ERA_FIELD
FieldPosition selector for 'G' field alignment,
corresponding to the |
int |
EXTENDED_YEAR_FIELD
[icu] FieldPosition selector for 'u' field alignment,
corresponding to the |
int |
FLEXIBLE_DAY_PERIOD_FIELD
[icu] FieldPosition selector for 'B' field alignment. |
int |
FRACTIONAL_SECOND_FIELD
[icu] FieldPosition selector for 'S' field alignment,
corresponding to the |
int |
FULL
Constant for full style pattern. |
String |
GENERIC_TZ
[icu] Constant for generic non-location format, such as Pacific Time; used in combinations date + time + zone, or time + zone. |
String |
HOUR
[icu] Constant for date skeleton with hour, with the locale's preferred hour format (12 or 24). |
int |
HOUR0_FIELD
FieldPosition selector for 'K' field alignment,
corresponding to the |
int |
HOUR1_FIELD
FieldPosition selector for 'h' field alignment,
corresponding to the |
String |
HOUR24
[icu] Constant for date skeleton with hour in 24-hour presentation. |
String |
HOUR24_MINUTE
[icu] Constant for date skeleton with hour and minute in 24-hour presentation. |
String |
HOUR24_MINUTE_SECOND
[icu] Constant for date skeleton with hour, minute, and second in 24-hour presentation. |
String |
HOUR_MINUTE
[icu] Constant for date skeleton with hour and minute, with the locale's preferred hour format (12 or 24). |
String |
HOUR_MINUTE_SECOND
[icu] Constant for date skeleton with hour, minute, and second, with the locale's preferred hour format (12 or 24). |
int |
HOUR_OF_DAY0_FIELD
FieldPosition selector for 'H' field alignment,
corresponding to the |
int |
HOUR_OF_DAY1_FIELD
FieldPosition selector for 'k' field alignment,
corresponding to the |
int |
JULIAN_DAY_FIELD
[icu] FieldPosition selector for 'g' field alignment,
corresponding to the |
String |
LOCATION_TZ
[icu] Constant for generic location format, such as Los Angeles Time; used in combinations date + time + zone, or time + zone. |
int |
LONG
Constant for long style pattern. |
int |
MEDIUM
Constant for medium style pattern. |
int |
MILLISECONDS_IN_DAY_FIELD
[icu] FieldPosition selector for 'A' field alignment,
corresponding to the |
int |
MILLISECOND_FIELD
Alias for FRACTIONAL_SECOND_FIELD. |
String |
MINUTE
[icu] Constant for date skeleton with minute. |
int |
MINUTE_FIELD
FieldPosition selector for 'm' field alignment,
corresponding to the |
String |
MINUTE_SECOND
[icu] Constant for date skeleton with minute and second. |
String |
MONTH
[icu] Constant for date skeleton with month. |
String |
MONTH_DAY
[icu] Constant for date skeleton with long month and day. |
int |
MONTH_FIELD
FieldPosition selector for 'M' field alignment,
corresponding to the |
String |
MONTH_WEEKDAY_DAY
[icu] Constant for date skeleton with month, weekday, and day. |
int |
NONE
[icu] Constant for empty style pattern. |
String |
NUM_MONTH
[icu] Constant for date skeleton with numeric month. |
String |
NUM_MONTH_DAY
[icu] Constant for date skeleton with numeric month and day. |
String |
NUM_MONTH_WEEKDAY_DAY
[icu] Constant for date skeleton with numeric month, weekday, and day. |
String |
QUARTER
[icu] Constant for date skeleton with quarter. |
int |
QUARTER_FIELD
[icu] FieldPosition selector for 'Q' field alignment,
corresponding to the |
int |
RELATIVE
[icu] Constant for relative style mask. |
int |
RELATIVE_DEFAULT
[icu] Constant for relative default style pattern. |
int |
RELATIVE_FULL
[icu] Constant for relative full style pattern. |
int |
RELATIVE_LONG
[icu] Constant for relative style pattern. |
int |
RELATIVE_MEDIUM
[icu] Constant for relative style pattern. |
int |
RELATIVE_SHORT
[icu] Constant for relative style pattern. |
String |
SECOND
[icu] Constant for date skeleton with second. |
int |
SECOND_FIELD
FieldPosition selector for 's' field alignment,
corresponding to the |
int |
SHORT
Constant for short style pattern. |
String |
SPECIFIC_TZ
[icu] Constant for specific non-location format, such as Pacific Daylight Time; used in combinations date + time + zone, or time + zone. |
int |
STANDALONE_DAY_FIELD
[icu] FieldPosition selector for 'c' field alignment,
corresponding to the |
int |
STANDALONE_MONTH_FIELD
[icu] FieldPosition selector for 'L' field alignment,
corresponding to the |
int |
STANDALONE_QUARTER_FIELD
[icu] FieldPosition selector for 'q' field alignment,
corresponding to the |
int |
TIMEZONE_FIELD
FieldPosition selector for 'z' field alignment,
corresponding to the |
int |
TIMEZONE_GENERIC_FIELD
[icu] FieldPosition selector for 'v' field alignment,
corresponding to the |
int |
TIMEZONE_ISO_FIELD
[icu] FieldPosition selector for 'X' field alignment,
corresponding to the |
int |
TIMEZONE_ISO_LOCAL_FIELD
[icu] FieldPosition selector for 'x' field alignment,
corresponding to the |
int |
TIMEZONE_LOCALIZED_GMT_OFFSET_FIELD
[icu] FieldPosition selector for 'O' field alignment,
corresponding to the |
int |
TIMEZONE_RFC_FIELD
[icu] FieldPosition selector for 'Z' field alignment,
corresponding to the |
int |
TIMEZONE_SPECIAL_FIELD
[icu] FieldPosition selector for 'V' field alignment,
corresponding to the |
String |
WEEKDAY
[icu] Constant for date skeleton with weekday. |
int |
WEEK_OF_MONTH_FIELD
FieldPosition selector for 'W' field alignment,
corresponding to the |
int |
WEEK_OF_YEAR_FIELD
FieldPosition selector for 'w' field alignment,
corresponding to the |
String |
YEAR
[icu] Constant for date skeleton with year. |
String |
YEAR_ABBR_MONTH
[icu] Constant for date skeleton with year and abbreviated month. |
String |
YEAR_ABBR_MONTH_DAY
[icu] Constant for date skeleton with year, abbreviated month, and day. |
String |
YEAR_ABBR_MONTH_WEEKDAY_DAY
[icu] Constant for date skeleton with year, abbreviated month, weekday, and day. |
String |
YEAR_ABBR_QUARTER
[icu] Constant for date skeleton with year and abbreviated quarter. |
int |
YEAR_FIELD
FieldPosition selector for 'y' field alignment,
corresponding to the |
String |
YEAR_MONTH
[icu] Constant for date skeleton with year and month. |
String |
YEAR_MONTH_DAY
[icu] Constant for date skeleton with year, month, and day. |
String |
YEAR_MONTH_WEEKDAY_DAY
[icu] Constant for date skeleton with year, month, weekday, and day. |
int |
YEAR_NAME_FIELD
[icu] FieldPosition selector for 'U' field alignment,
corresponding to the |
String |
YEAR_NUM_MONTH
[icu] Constant for date skeleton with year and numeric month. |
String |
YEAR_NUM_MONTH_DAY
[icu] Constant for date skeleton with year, numeric month, and day. |
String |
YEAR_NUM_MONTH_WEEKDAY_DAY
[icu] Constant for date skeleton with year, numeric month, weekday, and day. |
String |
YEAR_QUARTER
[icu] Constant for date skeleton with year and quarter. |
int |
YEAR_WOY_FIELD
[icu] FieldPosition selector for 'Y' field alignment,
corresponding to the |
Fields | |
---|---|
protected
Calendar |
calendar
The calendar that |
protected
NumberFormat |
numberFormat
The number formatter that |
Protected constructors | |
---|---|
DateFormat()
Creates a new date format. |
Public methods | |
---|---|
Object
|
clone()
Overrides clone. |
boolean
|
equals(Object obj)
Overrides equals. |
final
StringBuffer
|
format(Object obj, StringBuffer toAppendTo, FieldPosition fieldPosition)
Formats a time object into a time string. |
StringBuffer
|
format(Date date, StringBuffer toAppendTo, FieldPosition fieldPosition)
Formats a Date into a date/time string. |
final
String
|
format(Date date)
Formats a Date into a date/time string. |
abstract
StringBuffer
|
format(Calendar cal, StringBuffer toAppendTo, FieldPosition fieldPosition)
Formats a date into a date/time string. |
static
Locale[]
|
getAvailableLocales()
Returns the set of locales for which DateFormats are installed. |
boolean
|
getBooleanAttribute(DateFormat.BooleanAttribute key)
Returns the current value for the specified BooleanAttribute for this instance if attribute is missing false is returned. |
Calendar
|
getCalendar()
Returns the calendar associated with this date/time formatter. |
DisplayContext
|
getContext(DisplayContext.Type type)
[icu] Get the formatter's DisplayContext value for the specified DisplayContext.Type, such as CAPITALIZATION. |
static
final
DateFormat
|
getDateInstance(int style, Locale aLocale)
Returns the date formatter with the given formatting style for the given locale. |
static
final
DateFormat
|
getDateInstance(Calendar cal, int dateStyle)
Creates a |
static
final
DateFormat
|
getDateInstance(Calendar cal, int dateStyle, ULocale locale)
Creates a |
static
final
DateFormat
|
getDateInstance()
Returns the date formatter with the default formatting style
for the default |
static
final
DateFormat
|
getDateInstance(int style, ULocale locale)
Returns the date formatter with the given formatting style for the given locale. |
static
final
DateFormat
|
getDateInstance(Calendar cal, int dateStyle, Locale locale)
Creates a |
static
final
DateFormat
|
getDateInstance(int style)
Returns the date formatter with the given formatting style
for the default |
static
final
DateFormat
|
getDateTimeInstance(int dateStyle, int timeStyle)
Returns the date/time formatter with the given date and time
formatting styles for the default |
static
final
DateFormat
|
getDateTimeInstance()
Returns the date/time formatter with the default formatting style
for the default |
static
final
DateFormat
|
getDateTimeInstance(Calendar cal, int dateStyle, int timeStyle, ULocale locale)
Creates a |
static
final
DateFormat
|
getDateTimeInstance(Calendar cal, int dateStyle, int timeStyle, Locale locale)
Creates a |
static
final
DateFormat
|
getDateTimeInstance(int dateStyle, int timeStyle, ULocale locale)
Returns the date/time formatter with the given formatting styles for the given locale. |
static
final
DateFormat
|
getDateTimeInstance(int dateStyle, int timeStyle, Locale aLocale)
Returns the date/time formatter with the given formatting styles for the given locale. |
static
final
DateFormat
|
getDateTimeInstance(Calendar cal, int dateStyle, int timeStyle)
Creates a |
static
final
DateFormat
|
getInstance(Calendar cal, ULocale locale)
Returns a date/time formatter that uses the SHORT style for both the date and the time. |
static
final
DateFormat
|
getInstance(Calendar cal)
Returns a default date/time formatter that uses the SHORT style for both the date and the time. |
static
final
DateFormat
|
getInstance(Calendar cal, Locale locale)
Returns a date/time formatter that uses the SHORT style for both the date and the time. |
static
final
DateFormat
|
getInstance()
Returns a default date/time formatter that uses the SHORT style for both the date and the time. |
static
final
DateFormat
|
getInstanceForSkeleton(Calendar cal, String skeleton, Locale locale)
[icu] Creates a |
static
final
DateFormat
|
getInstanceForSkeleton(Calendar cal, String skeleton, ULocale locale)
[icu] Creates a |
static
final
DateFormat
|
getInstanceForSkeleton(String skeleton, ULocale locale)
[icu] Returns a |
static
final
DateFormat
|
getInstanceForSkeleton(String skeleton, Locale locale)
[icu] Returns a |
static
final
DateFormat
|
getInstanceForSkeleton(String skeleton)
[icu] Returns a |
NumberFormat
|
getNumberFormat()
Returns the number formatter which this date/time formatter uses to format and parse a time. |
static
final
DateFormat
|
getPatternInstance(String skeleton, Locale locale)
[icu] Returns a |
static
final
DateFormat
|
getPatternInstance(String skeleton, ULocale locale)
[icu] Returns a |
static
final
DateFormat
|
getPatternInstance(String skeleton)
[icu] Returns a |
static
final
DateFormat
|
getPatternInstance(Calendar cal, String skeleton, Locale locale)
[icu] Creates a |
static
final
DateFormat
|
getPatternInstance(Calendar cal, String skeleton, ULocale locale)
[icu] Creates a |
static
final
DateFormat
|
getTimeInstance(Calendar cal, int timeStyle)
Creates a |
static
final
DateFormat
|
getTimeInstance()
Gets the time formatter with the default formatting style
for the default |
static
final
DateFormat
|
getTimeInstance(int style, ULocale locale)
Returns the time formatter with the given formatting style for the given locale. |
static
final
DateFormat
|
getTimeInstance(Calendar cal, int timeStyle, ULocale locale)
Creates a |
static
final
DateFormat
|
getTimeInstance(Calendar cal, int timeStyle, Locale locale)
Creates a |
static
final
DateFormat
|
getTimeInstance(int style)
Returns the time formatter with the given formatting style
for the default |
static
final
DateFormat
|
getTimeInstance(int style, Locale aLocale)
Returns the time formatter with the given formatting style for the given locale. |
TimeZone
|
getTimeZone()
Returns the time zone. |
int
|
hashCode()
Overrides hashCode. |
boolean
|
isCalendarLenient()
Returns whether date/time parsing in the encapsulated Calendar object is lenient. |
boolean
|
isLenient()
Returns whether both date/time parsing in the encapsulated Calendar object and DateFormat whitespace & numeric processing is lenient. |
Date
|
parse(String text)
Parses a date/time string. |
Date
|
parse(String text, ParsePosition pos)
Parses a date/time string according to the given parse position. |
abstract
void
|
parse(String text, Calendar cal, ParsePosition pos)
Parses a date/time string according to the given parse position. |
Object
|
parseObject(String source, ParsePosition pos)
Parses a date/time string into an Object. |
DateFormat
|
setBooleanAttribute(DateFormat.BooleanAttribute key, boolean value)
Sets a boolean attribute for this instance. |
void
|
setCalendar(Calendar newCalendar)
Sets the calendar to be used by this date format. |
void
|
setCalendarLenient(boolean lenient)
Specifies whether date/time parsing in the encapsulated Calendar object should be lenient. |
void
|
setContext(DisplayContext context)
[icu] Set a particular DisplayContext value in the formatter, such as CAPITALIZATION_FOR_STANDALONE. |
void
|
setLenient(boolean lenient)
Specifies whether date/time parsing is to be lenient. |
void
|
setNumberFormat(NumberFormat newNumberFormat)
Sets the number formatter. |
void
|
setTimeZone(TimeZone zone)
Sets the time zone for the calendar of this DateFormat object. |
Inherited methods | |
---|---|
Constants
ABBR_GENERIC_TZ
public static final String ABBR_GENERIC_TZ
[icu] Constant for generic non-location format, abbreviated if possible, such as PT; used in combinations date + time + zone, or time + zone.
Constant Value: "v"
ABBR_MONTH
public static final String ABBR_MONTH
[icu] Constant for date skeleton with abbreviated month.
Constant Value: "MMM"
ABBR_MONTH_DAY
public static final String ABBR_MONTH_DAY
[icu] Constant for date skeleton with abbreviated month and day. Used in combinations date + time, date + time + zone, or time + zone.
Constant Value: "MMMd"
ABBR_MONTH_WEEKDAY_DAY
public static final String ABBR_MONTH_WEEKDAY_DAY
[icu] Constant for date skeleton with abbreviated month, weekday, and day. Used in combinations date + time, date + time + zone, or time + zone.
Constant Value: "MMMEd"
ABBR_QUARTER
public static final String ABBR_QUARTER
[icu] Constant for date skeleton with abbreviated quarter.
Constant Value: "QQQ"
ABBR_SPECIFIC_TZ
public static final String ABBR_SPECIFIC_TZ
[icu] Constant for specific non-location format, abbreviated if possible, such as PDT; used in combinations date + time + zone, or time + zone.
Constant Value: "z"
ABBR_UTC_TZ
public static final String ABBR_UTC_TZ
[icu] Constant for localized GMT/UTC format, such as GMT+8:00 or HPG-8:00; used in combinations date + time + zone, or time + zone.
Constant Value: "ZZZZ"
ABBR_WEEKDAY
public static final String ABBR_WEEKDAY
[icu] Constant for date skeleton with abbreviated weekday.
Constant Value: "E"
AM_PM_FIELD
public static final int AM_PM_FIELD
FieldPosition selector for 'a' field alignment,
corresponding to the Calendar#AM_PM
field.
Constant Value: 14 (0x0000000e)
AM_PM_MIDNIGHT_NOON_FIELD
public static final int AM_PM_MIDNIGHT_NOON_FIELD
[icu] FieldPosition selector for 'b' field alignment. No related Calendar field. This displays the fixed day period (am/pm/midnight/noon).
Constant Value: 35 (0x00000023)
DATE_FIELD
public static final int DATE_FIELD
FieldPosition selector for 'd' field alignment,
corresponding to the Calendar#DATE
field.
Constant Value: 3 (0x00000003)
DAY
public static final String DAY
[icu] Constant for date skeleton with day.
Constant Value: "d"
DAY_OF_WEEK_FIELD
public static final int DAY_OF_WEEK_FIELD
FieldPosition selector for 'E' field alignment,
corresponding to the Calendar#DAY_OF_WEEK
field.
Constant Value: 9 (0x00000009)
DAY_OF_WEEK_IN_MONTH_FIELD
public static final int DAY_OF_WEEK_IN_MONTH_FIELD
FieldPosition selector for 'F' field alignment,
corresponding to the Calendar#DAY_OF_WEEK_IN_MONTH
field.
Constant Value: 11 (0x0000000b)
DAY_OF_YEAR_FIELD
public static final int DAY_OF_YEAR_FIELD
FieldPosition selector for 'D' field alignment,
corresponding to the Calendar#DAY_OF_YEAR
field.
Constant Value: 10 (0x0000000a)
DEFAULT
public static final int DEFAULT
Constant for default style pattern. Its value is MEDIUM.
Constant Value: 2 (0x00000002)
DOW_LOCAL_FIELD
public static final int DOW_LOCAL_FIELD
[icu] FieldPosition selector for 'e' field alignment,
corresponding to the Calendar#DOW_LOCAL
field.
Constant Value: 19 (0x00000013)
ERA_FIELD
public static final int ERA_FIELD
FieldPosition selector for 'G' field alignment,
corresponding to the Calendar#ERA
field.
Constant Value: 0 (0x00000000)
EXTENDED_YEAR_FIELD
public static final int EXTENDED_YEAR_FIELD
[icu] FieldPosition selector for 'u' field alignment,
corresponding to the Calendar#EXTENDED_YEAR
field.
Constant Value: 20 (0x00000014)
FLEXIBLE_DAY_PERIOD_FIELD
public static final int FLEXIBLE_DAY_PERIOD_FIELD
[icu] FieldPosition selector for 'B' field alignment. No related Calendar field. This displays the flexible day period.
Constant Value: 36 (0x00000024)
FRACTIONAL_SECOND_FIELD
public static final int FRACTIONAL_SECOND_FIELD
[icu] FieldPosition selector for 'S' field alignment,
corresponding to the Calendar#MILLISECOND
field.
Note: Time formats that use 'S' can display a maximum of three
significant digits for fractional seconds, corresponding to millisecond
resolution and a fractional seconds sub-pattern of SSS. If the
sub-pattern is S or SS, the fractional seconds value will be truncated
(not rounded) to the number of display places specified. If the
fractional seconds sub-pattern is longer than SSS, the additional
display places will be filled with zeros.
Constant Value: 8 (0x00000008)
FULL
public static final int FULL
Constant for full style pattern.
Constant Value: 0 (0x00000000)
GENERIC_TZ
public static final String GENERIC_TZ
[icu] Constant for generic non-location format, such as Pacific Time; used in combinations date + time + zone, or time + zone.
Constant Value: "vvvv"
HOUR
public static final String HOUR
[icu] Constant for date skeleton with hour, with the locale's preferred hour format (12 or 24).
Constant Value: "j"
HOUR0_FIELD
public static final int HOUR0_FIELD
FieldPosition selector for 'K' field alignment,
corresponding to the Calendar#HOUR
field.
HOUR0_FIELD is used for the zero-based 12-hour clock.
For example, 11:30 PM + 1 hour results in 00:30 AM.
Constant Value: 16 (0x00000010)
HOUR1_FIELD
public static final int HOUR1_FIELD
FieldPosition selector for 'h' field alignment,
corresponding to the Calendar#HOUR
field.
HOUR1_FIELD is used for the one-based 12-hour clock.
For example, 11:30 PM + 1 hour results in 12:30 AM.
Constant Value: 15 (0x0000000f)
HOUR24
public static final String HOUR24
[icu] Constant for date skeleton with hour in 24-hour presentation.
Constant Value: "H"
HOUR24_MINUTE
public static final String HOUR24_MINUTE
[icu] Constant for date skeleton with hour and minute in 24-hour presentation. Used in combinations date + time, date + time + zone, or time + zone.
Constant Value: "Hm"
HOUR24_MINUTE_SECOND
public static final String HOUR24_MINUTE_SECOND
[icu] Constant for date skeleton with hour, minute, and second in 24-hour presentation. Used in combinations date + time, date + time + zone, or time + zone.
Constant Value: "Hms"
HOUR_MINUTE
public static final String HOUR_MINUTE
[icu] Constant for date skeleton with hour and minute, with the locale's preferred hour format (12 or 24). Used in combinations date + time, date + time + zone, or time + zone.
Constant Value: "jm"
HOUR_MINUTE_SECOND
public static final String HOUR_MINUTE_SECOND
[icu] Constant for date skeleton with hour, minute, and second, with the locale's preferred hour format (12 or 24). Used in combinations date + time, date + time + zone, or time + zone.
Constant Value: "jms"
HOUR_OF_DAY0_FIELD
public static final int HOUR_OF_DAY0_FIELD
FieldPosition selector for 'H' field alignment,
corresponding to the Calendar#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.
Constant Value: 5 (0x00000005)
HOUR_OF_DAY1_FIELD
public static final int HOUR_OF_DAY1_FIELD
FieldPosition selector for 'k' field alignment,
corresponding to the Calendar#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.
Constant Value: 4 (0x00000004)
JULIAN_DAY_FIELD
public static final int JULIAN_DAY_FIELD
[icu] FieldPosition selector for 'g' field alignment,
corresponding to the Calendar#JULIAN_DAY
field.
Constant Value: 21 (0x00000015)
LOCATION_TZ
public static final String LOCATION_TZ
[icu] Constant for generic location format, such as Los Angeles Time; used in combinations date + time + zone, or time + zone.
Constant Value: "VVVV"
LONG
public static final int LONG
Constant for long style pattern.
Constant Value: 1 (0x00000001)
MEDIUM
public static final int MEDIUM
Constant for medium style pattern.
Constant Value: 2 (0x00000002)
MILLISECONDS_IN_DAY_FIELD
public static final int MILLISECONDS_IN_DAY_FIELD
[icu] FieldPosition selector for 'A' field alignment,
corresponding to the Calendar#MILLISECONDS_IN_DAY
field.
Constant Value: 22 (0x00000016)
MILLISECOND_FIELD
public static final int MILLISECOND_FIELD
Alias for FRACTIONAL_SECOND_FIELD.
Constant Value: 8 (0x00000008)
MINUTE
public static final String MINUTE
[icu] Constant for date skeleton with minute.
Constant Value: "m"
MINUTE_FIELD
public static final int MINUTE_FIELD
FieldPosition selector for 'm' field alignment,
corresponding to the Calendar#MINUTE
field.
Constant Value: 6 (0x00000006)
MINUTE_SECOND
public static final String MINUTE_SECOND
[icu] Constant for date skeleton with minute and second. Used in combinations date + time, date + time + zone, or time + zone.
Constant Value: "ms"
MONTH
public static final String MONTH
[icu] Constant for date skeleton with month.
Constant Value: "MMMM"
MONTH_DAY
public static final String MONTH_DAY
[icu] Constant for date skeleton with long month and day. Used in combinations date + time, date + time + zone, or time + zone.
Constant Value: "MMMMd"
MONTH_FIELD
public static final int MONTH_FIELD
FieldPosition selector for 'M' field alignment,
corresponding to the Calendar#MONTH
field.
Constant Value: 2 (0x00000002)
MONTH_WEEKDAY_DAY
public static final String MONTH_WEEKDAY_DAY
[icu] Constant for date skeleton with month, weekday, and day. Used in combinations date + time, date + time + zone, or time + zone.
Constant Value: "MMMMEEEEd"
NONE
public static final int NONE
[icu] Constant for empty style pattern.
Constant Value: -1 (0xffffffff)
NUM_MONTH
public static final String NUM_MONTH
[icu] Constant for date skeleton with numeric month.
Constant Value: "M"
NUM_MONTH_DAY
public static final String NUM_MONTH_DAY
[icu] Constant for date skeleton with numeric month and day. Used in combinations date + time, date + time + zone, or time + zone.
Constant Value: "Md"
NUM_MONTH_WEEKDAY_DAY
public static final String NUM_MONTH_WEEKDAY_DAY
[icu] Constant for date skeleton with numeric month, weekday, and day. Used in combinations date + time, date + time + zone, or time + zone.
Constant Value: "MEd"
QUARTER
public static final String QUARTER
[icu] Constant for date skeleton with quarter.
Constant Value: "QQQQ"
QUARTER_FIELD
public static final int QUARTER_FIELD
[icu] FieldPosition selector for 'Q' field alignment,
corresponding to the Calendar#MONTH
field.
This displays the quarter.
Constant Value: 27 (0x0000001b)
RELATIVE
public static final int RELATIVE
[icu] Constant for relative style mask.
Constant Value: 128 (0x00000080)
RELATIVE_DEFAULT
public static final int RELATIVE_DEFAULT
[icu] Constant for relative default style pattern.
Constant Value: 130 (0x00000082)
RELATIVE_FULL
public static final int RELATIVE_FULL
[icu] Constant for relative full style pattern.
Constant Value: 128 (0x00000080)
RELATIVE_LONG
public static final int RELATIVE_LONG
[icu] Constant for relative style pattern.
Constant Value: 129 (0x00000081)
RELATIVE_MEDIUM
public static final int RELATIVE_MEDIUM
[icu] Constant for relative style pattern.
Constant Value: 130 (0x00000082)
RELATIVE_SHORT
public static final int RELATIVE_SHORT
[icu] Constant for relative style pattern.
Constant Value: 131 (0x00000083)
SECOND
public static final String SECOND
[icu] Constant for date skeleton with second.
Constant Value: "s"
SECOND_FIELD
public static final int SECOND_FIELD
FieldPosition selector for 's' field alignment,
corresponding to the Calendar#SECOND
field.
Constant Value: 7 (0x00000007)
SHORT
public static final int SHORT
Constant for short style pattern.
Constant Value: 3 (0x00000003)
SPECIFIC_TZ
public static final String SPECIFIC_TZ
[icu] Constant for specific non-location format, such as Pacific Daylight Time; used in combinations date + time + zone, or time + zone.
Constant Value: "zzzz"
STANDALONE_DAY_FIELD
public static final int STANDALONE_DAY_FIELD
[icu] FieldPosition selector for 'c' field alignment,
corresponding to the Calendar#DAY_OF_WEEK
field.
This displays the stand alone day name, if available.
Constant Value: 25 (0x00000019)
STANDALONE_MONTH_FIELD
public static final int STANDALONE_MONTH_FIELD
[icu] FieldPosition selector for 'L' field alignment,
corresponding to the Calendar#MONTH
field.
This displays the stand alone month name, if available.
Constant Value: 26 (0x0000001a)
STANDALONE_QUARTER_FIELD
public static final int STANDALONE_QUARTER_FIELD
[icu] FieldPosition selector for 'q' field alignment,
corresponding to the Calendar#MONTH
field.
This displays the stand alone quarter, if available.
Constant Value: 28 (0x0000001c)
TIMEZONE_FIELD
public static final int TIMEZONE_FIELD
FieldPosition selector for 'z' field alignment,
corresponding to the Calendar#ZONE_OFFSET
and
Calendar#DST_OFFSET
fields.
Constant Value: 17 (0x00000011)
TIMEZONE_GENERIC_FIELD
public static final int TIMEZONE_GENERIC_FIELD
[icu] FieldPosition selector for 'v' field alignment,
corresponding to the Calendar#ZONE_OFFSET
and
Calendar#DST_OFFSET
fields. This displays the generic zone
name, if available.
Constant Value: 24 (0x00000018)
TIMEZONE_ISO_FIELD
public static final int TIMEZONE_ISO_FIELD
[icu] FieldPosition selector for 'X' field alignment,
corresponding to the Calendar#ZONE_OFFSET
and
Calendar#DST_OFFSET
fields. This displays the
ISO 8601 local time offset format or UTC indicator ("Z").
Constant Value: 32 (0x00000020)
TIMEZONE_ISO_LOCAL_FIELD
public static final int TIMEZONE_ISO_LOCAL_FIELD
[icu] FieldPosition selector for 'x' field alignment,
corresponding to the Calendar#ZONE_OFFSET
and
Calendar#DST_OFFSET
fields. This displays the
ISO 8601 local time offset format.
Constant Value: 33 (0x00000021)
TIMEZONE_LOCALIZED_GMT_OFFSET_FIELD
public static final int TIMEZONE_LOCALIZED_GMT_OFFSET_FIELD
[icu] FieldPosition selector for 'O' field alignment,
corresponding to the Calendar#ZONE_OFFSET
and
Calendar#DST_OFFSET
fields. This displays the
localized GMT format.
Constant Value: 31 (0x0000001f)
TIMEZONE_RFC_FIELD
public static final int TIMEZONE_RFC_FIELD
[icu] FieldPosition selector for 'Z' field alignment,
corresponding to the Calendar#ZONE_OFFSET
and
Calendar#DST_OFFSET
fields.
Constant Value: 23 (0x00000017)
TIMEZONE_SPECIAL_FIELD
public static final int TIMEZONE_SPECIAL_FIELD
[icu] FieldPosition selector for 'V' field alignment,
corresponding to the Calendar#ZONE_OFFSET
and
Calendar#DST_OFFSET
fields. This displays the fallback timezone
name when VVVV is specified, and the short standard or daylight
timezone name ignoring commonlyUsed when a single V is specified.
Constant Value: 29 (0x0000001d)
WEEKDAY
public static final String WEEKDAY
[icu] Constant for date skeleton with weekday.
Constant Value: "EEEE"
WEEK_OF_MONTH_FIELD
public static final int WEEK_OF_MONTH_FIELD
FieldPosition selector for 'W' field alignment,
corresponding to the Calendar#WEEK_OF_MONTH
field.
Constant Value: 13 (0x0000000d)
WEEK_OF_YEAR_FIELD
public static final int WEEK_OF_YEAR_FIELD
FieldPosition selector for 'w' field alignment,
corresponding to the Calendar#WEEK_OF_YEAR
field.
Constant Value: 12 (0x0000000c)
YEAR
public static final String YEAR
[icu] Constant for date skeleton with year.
Constant Value: "y"
YEAR_ABBR_MONTH
public static final String YEAR_ABBR_MONTH
[icu] Constant for date skeleton with year and abbreviated month.
Constant Value: "yMMM"
YEAR_ABBR_MONTH_DAY
public static final String YEAR_ABBR_MONTH_DAY
[icu] Constant for date skeleton with year, abbreviated month, and day. Used in combinations date + time, date + time + zone, or time + zone.
Constant Value: "yMMMd"
YEAR_ABBR_MONTH_WEEKDAY_DAY
public static final String YEAR_ABBR_MONTH_WEEKDAY_DAY
[icu] Constant for date skeleton with year, abbreviated month, weekday, and day. Used in combinations date + time, date + time + zone, or time + zone.
Constant Value: "yMMMEd"
YEAR_ABBR_QUARTER
public static final String YEAR_ABBR_QUARTER
[icu] Constant for date skeleton with year and abbreviated quarter.
Constant Value: "yQQQ"
YEAR_FIELD
public static final int YEAR_FIELD
FieldPosition selector for 'y' field alignment,
corresponding to the Calendar#YEAR
field.
Constant Value: 1 (0x00000001)
YEAR_MONTH
public static final String YEAR_MONTH
[icu] Constant for date skeleton with year and month.
Constant Value: "yMMMM"
YEAR_MONTH_DAY
public static final String YEAR_MONTH_DAY
[icu] Constant for date skeleton with year, month, and day. Used in combinations date + time, date + time + zone, or time + zone.
Constant Value: "yMMMMd"
YEAR_MONTH_WEEKDAY_DAY
public static final String YEAR_MONTH_WEEKDAY_DAY
[icu] Constant for date skeleton with year, month, weekday, and day. Used in combinations date + time, date + time + zone, or time + zone.
Constant Value: "yMMMMEEEEd"
YEAR_NAME_FIELD
public static final int YEAR_NAME_FIELD
[icu] FieldPosition selector for 'U' field alignment,
corresponding to the Calendar#YEAR
field.
This displays the cyclic year name, if available.
Constant Value: 30 (0x0000001e)
YEAR_NUM_MONTH
public static final String YEAR_NUM_MONTH
[icu] Constant for date skeleton with year and numeric month.
Constant Value: "yM"
YEAR_NUM_MONTH_DAY
public static final String YEAR_NUM_MONTH_DAY
[icu] Constant for date skeleton with year, numeric month, and day. Used in combinations date + time, date + time + zone, or time + zone.
Constant Value: "yMd"
YEAR_NUM_MONTH_WEEKDAY_DAY
public static final String YEAR_NUM_MONTH_WEEKDAY_DAY
[icu] Constant for date skeleton with year, numeric month, weekday, and day. Used in combinations date + time, date + time + zone, or time + zone.
Constant Value: "yMEd"
YEAR_QUARTER
public static final String YEAR_QUARTER
[icu] Constant for date skeleton with year and quarter.
Constant Value: "yQQQQ"
YEAR_WOY_FIELD
public static final int YEAR_WOY_FIELD
[icu] FieldPosition selector for 'Y' field alignment,
corresponding to the Calendar#YEAR_WOY
field.
Constant Value: 18 (0x00000012)
Fields
calendar
protected Calendar calendar
The calendar that DateFormat
uses to produce the time field
values needed to implement date and time formatting. Subclasses should
initialize this to a calendar appropriate for the locale associated with
this DateFormat
.
numberFormat
protected NumberFormat numberFormat
The number formatter that DateFormat
uses to format numbers
in dates and times. Subclasses should initialize this to a number format
appropriate for the locale associated with this DateFormat
.
Protected constructors
Public methods
clone
public Object clone ()
Overrides clone.
Returns | |
---|---|
Object |
a clone of this instance. |
equals
public 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. |
format
public final StringBuffer format (Object obj, StringBuffer toAppendTo, FieldPosition fieldPosition)
Formats a time object into a time string. Examples of time objects are a time value expressed in milliseconds and a Date object.
Parameters | |
---|---|
obj |
Object : must be a Number or a Date or a Calendar. |
toAppendTo |
StringBuffer : the string buffer for the returning time string. |
fieldPosition |
FieldPosition : keeps track of the position of the field
within the returned string.
On input: an alignment field,
if desired. On output: the offsets of the alignment field. For
example, given a time text "1996.07.10 AD at 15:08:56 PDT",
if the given fieldPosition is DateFormat.YEAR_FIELD, the
begin index and end index of fieldPosition will be set to
0 and 4, respectively.
Notice that if the same time field appears
more than once in a pattern, the fieldPosition will be set for the first
occurrence of that time field. For instance, formatting a Date to
the time string "1 PM PDT (Pacific Daylight Time)" using the pattern
"h a z (zzzz)" and the alignment field DateFormat.TIMEZONE_FIELD,
the begin index and end index of fieldPosition will be set to
5 and 8, respectively, for the first occurrence of the timezone
pattern character 'z'. |
Returns | |
---|---|
StringBuffer |
the formatted time string. |
See also:
format
public StringBuffer format (Date date, StringBuffer toAppendTo, FieldPosition fieldPosition)
Formats a Date into a date/time string.
Parameters | |
---|---|
date |
Date : a Date to be formatted into a date/time string. |
toAppendTo |
StringBuffer : the string buffer for the returning date/time string. |
fieldPosition |
FieldPosition : keeps track of the position of the field
within the returned string.
On input: an alignment field,
if desired. On output: the offsets of the alignment field. For
example, given a time text "1996.07.10 AD at 15:08:56 PDT",
if the given fieldPosition is DateFormat.YEAR_FIELD, the
begin index and end index of fieldPosition will be set to
0 and 4, respectively.
Notice that if the same time field appears
more than once in a pattern, the fieldPosition will be set for the first
occurrence of that time field. For instance, formatting a Date to
the time string "1 PM PDT (Pacific Daylight Time)" using the pattern
"h a z (zzzz)" and the alignment field DateFormat.TIMEZONE_FIELD,
the begin index and end index of fieldPosition will be set to
5 and 8, respectively, for the first occurrence of the timezone
pattern character 'z'. |
Returns | |
---|---|
StringBuffer |
the formatted date/time string. |
format
public final String format (Date date)
Formats a Date into a date/time string.
Parameters | |
---|---|
date |
Date : the time value to be formatted into a time string. |
Returns | |
---|---|
String |
the formatted time string. |
format
public abstract StringBuffer format (Calendar cal, StringBuffer toAppendTo, FieldPosition fieldPosition)
Formats a date into a date/time string.
Parameters | |
---|---|
cal |
Calendar : a Calendar set to the date and time to be formatted
into a date/time string. When the calendar type is different from
the internal calendar held by this DateFormat instance, the date
and the time zone will be inherited from the input calendar, but
other calendar field values will be calculated by the internal calendar. |
toAppendTo |
StringBuffer : the string buffer for the returning date/time string. |
fieldPosition |
FieldPosition : keeps track of the position of the field
within the returned string.
On input: an alignment field,
if desired. On output: the offsets of the alignment field. For
example, given a time text "1996.07.10 AD at 15:08:56 PDT",
if the given fieldPosition is DateFormat.YEAR_FIELD, the
begin index and end index of fieldPosition will be set to
0 and 4, respectively.
Notice that if the same time field appears
more than once in a pattern, the fieldPosition will be set for the first
occurrence of that time field. For instance, formatting a Date to
the time string "1 PM PDT (Pacific Daylight Time)" using the pattern
"h a z (zzzz)" and the alignment field DateFormat.TIMEZONE_FIELD,
the begin index and end index of fieldPosition will be set to
5 and 8, respectively, for the first occurrence of the timezone
pattern character 'z'. |
Returns | |
---|---|
StringBuffer |
the formatted date/time string. |
getAvailableLocales
public static Locale[] getAvailableLocales ()
Returns the set of locales for which DateFormats are installed.
Returns | |
---|---|
Locale[] |
the set of locales for which DateFormats are installed. |
getBooleanAttribute
public boolean getBooleanAttribute (DateFormat.BooleanAttribute key)
Returns the current value for the specified BooleanAttribute for this instance if attribute is missing false is returned.
Parameters | |
---|---|
key |
DateFormat.BooleanAttribute |
Returns | |
---|---|
boolean |
See also:
getCalendar
public Calendar getCalendar ()
Returns the calendar associated with this date/time formatter.
Returns | |
---|---|
Calendar |
the calendar associated with this date/time formatter. |
getContext
public DisplayContext getContext (DisplayContext.Type type)
[icu] Get the formatter's DisplayContext value for the specified DisplayContext.Type, such as CAPITALIZATION.
Parameters | |
---|---|
type |
DisplayContext.Type : the DisplayContext.Type whose value to return |
Returns | |
---|---|
DisplayContext |
the current DisplayContext setting for the specified type |
getDateInstance
public static final DateFormat getDateInstance (int style, Locale aLocale)
Returns the date formatter with the given formatting style for the given locale.
Parameters | |
---|---|
style |
int : the given formatting style. For example,
SHORT for "M/d/yy" in the US locale. As currently implemented, relative date
formatting only affects a limited range of calendar days before or after the
current date, based on the CLDR <field type="day">/<relative> data: For example,
in English, "Yesterday", "Today", and "Tomorrow". Outside of this range, relative
dates are formatted using the corresponding non-relative style. |
aLocale |
Locale : the given locale. |
Returns | |
---|---|
DateFormat |
a date formatter. |
getDateInstance
public static final DateFormat getDateInstance (Calendar cal, int dateStyle)
Creates a DateFormat
object for the default locale that can be used
to format dates in the calendar system specified by cal
.
Parameters | |
---|---|
cal |
Calendar : The calendar system for which a date format is desired. |
dateStyle |
int : The type of date format desired. This can be
DateFormat#SHORT , DateFormat#MEDIUM ,
etc. |
Returns | |
---|---|
DateFormat |
getDateInstance
public static final DateFormat getDateInstance (Calendar cal, int dateStyle, ULocale locale)
Creates a DateFormat
object that can be used to format dates in
the calendar system specified by cal
.
Parameters | |
---|---|
cal |
Calendar : The calendar system for which a date format is desired. |
dateStyle |
int : The type of date format desired. This can be
DateFormat#SHORT , DateFormat#MEDIUM ,
etc. |
locale |
ULocale : The locale for which the date format is desired. |
Returns | |
---|---|
DateFormat |
getDateInstance
public static final DateFormat getDateInstance ()
Returns the date formatter with the default formatting style
for the default FORMAT
locale.
Returns | |
---|---|
DateFormat |
a date formatter. |
See also:
getDateInstance
public static final DateFormat getDateInstance (int style, ULocale locale)
Returns the date formatter with the given formatting style for the given locale.
Parameters | |
---|---|
style |
int : the given formatting style. For example,
SHORT for "M/d/yy" in the US locale. As currently implemented, relative date
formatting only affects a limited range of calendar days before or after the
current date, based on the CLDR <field type="day">/<relative> data: For example,
in English, "Yesterday", "Today", and "Tomorrow". Outside of this range, relative
dates are formatted using the corresponding non-relative style. |
locale |
ULocale : the given ulocale. |
Returns | |
---|---|
DateFormat |
a date formatter. |
getDateInstance
public static final DateFormat getDateInstance (Calendar cal, int dateStyle, Locale locale)
Creates a DateFormat
object that can be used to format dates in
the calendar system specified by cal
.
Parameters | |
---|---|
cal |
Calendar : The calendar system for which a date format is desired. |
dateStyle |
int : The type of date format desired. This can be
DateFormat#SHORT , DateFormat#MEDIUM ,
etc. |
locale |
Locale : The locale for which the date format is desired. |
Returns | |
---|---|
DateFormat |
getDateInstance
public static final DateFormat getDateInstance (int style)
Returns the date formatter with the given formatting style
for the default FORMAT
locale.
Parameters | |
---|---|
style |
int : the given formatting style. For example,
SHORT for "M/d/yy" in the US locale. As currently implemented, relative date
formatting only affects a limited range of calendar days before or after the
current date, based on the CLDR <field type="day">/<relative> data: For example,
in English, "Yesterday", "Today", and "Tomorrow". Outside of this range, relative
dates are formatted using the corresponding non-relative style. |
Returns | |
---|---|
DateFormat |
a date formatter. |
See also:
getDateTimeInstance
public static final DateFormat getDateTimeInstance (int dateStyle, int timeStyle)
Returns the date/time formatter with the given date and time
formatting styles for the default FORMAT
locale.
Parameters | |
---|---|
dateStyle |
int : the given date formatting style. For example,
SHORT for "M/d/yy" in the US locale. As currently implemented, relative date
formatting only affects a limited range of calendar days before or after the
current date, based on the CLDR <field type="day">/<relative> data: For example,
in English, "Yesterday", "Today", and "Tomorrow". Outside of this range, relative
dates are formatted using the corresponding non-relative style. |
timeStyle |
int : the given time formatting style. For example,
SHORT for "h:mm a" in the US locale. Relative time styles are not currently
supported, and behave just like the corresponding non-relative style. |
Returns | |
---|---|
DateFormat |
a date/time formatter. |
See also:
getDateTimeInstance
public static final DateFormat getDateTimeInstance ()
Returns the date/time formatter with the default formatting style
for the default FORMAT
locale.
Returns | |
---|---|
DateFormat |
a date/time formatter. |
See also:
getDateTimeInstance
public static final DateFormat getDateTimeInstance (Calendar cal, int dateStyle, int timeStyle, ULocale locale)
Creates a DateFormat
object that can be used to format dates and times in
the calendar system specified by cal
.
Parameters | |
---|---|
cal |
Calendar : The calendar system for which a date/time format is desired. |
dateStyle |
int : The type of date format desired. This can be
DateFormat#SHORT , DateFormat#MEDIUM ,
etc. |
timeStyle |
int : The type of time format desired. This can be
DateFormat#SHORT , DateFormat#MEDIUM ,
etc. |
locale |
ULocale : The locale for which the date/time format is desired. |
Returns | |
---|---|
DateFormat |
See also:
getDateTimeInstance
public static final DateFormat getDateTimeInstance (Calendar cal, int dateStyle, int timeStyle, Locale locale)
Creates a DateFormat
object that can be used to format dates and times in
the calendar system specified by cal
.
Parameters | |
---|---|
cal |
Calendar : The calendar system for which a date/time format is desired. |
dateStyle |
int : The type of date format desired. This can be
DateFormat#SHORT , DateFormat#MEDIUM ,
etc. |
timeStyle |
int : The type of time format desired. This can be
DateFormat#SHORT , DateFormat#MEDIUM ,
etc. |
locale |
Locale : The locale for which the date/time format is desired. |
Returns | |
---|---|
DateFormat |
See also:
getDateTimeInstance
public static final DateFormat getDateTimeInstance (int dateStyle, int timeStyle, ULocale locale)
Returns the date/time formatter with the given formatting styles for the given locale.
Parameters | |
---|---|
dateStyle |
int : the given date formatting style. As currently implemented, relative date
formatting only affects a limited range of calendar days before or after the
current date, based on the CLDR <field type="day">/<relative> data: For example,
in English, "Yesterday", "Today", and "Tomorrow". Outside of this range, relative
dates are formatted using the corresponding non-relative style. |
timeStyle |
int : the given time formatting style. Relative time styles are not
currently supported, and behave just like the corresponding non-relative style. |
locale |
ULocale : the given ulocale. |
Returns | |
---|---|
DateFormat |
a date/time formatter. |
getDateTimeInstance
public static final DateFormat getDateTimeInstance (int dateStyle, int timeStyle, Locale aLocale)
Returns the date/time formatter with the given formatting styles for the given locale.
Parameters | |
---|---|
dateStyle |
int : the given date formatting style. As currently implemented, relative date
formatting only affects a limited range of calendar days before or after the
current date, based on the CLDR <field type="day">/<relative> data: For example,
in English, "Yesterday", "Today", and "Tomorrow". Outside of this range, relative
dates are formatted using the corresponding non-relative style. |
timeStyle |
int : the given time formatting style. Relative time styles are not
currently supported, and behave just like the corresponding non-relative style. |
aLocale |
Locale : the given locale. |
Returns | |
---|---|
DateFormat |
a date/time formatter. |
getDateTimeInstance
public static final DateFormat getDateTimeInstance (Calendar cal, int dateStyle, int timeStyle)
Creates a DateFormat
object for the default locale that can be used to format
dates and times in the calendar system specified by cal
.
Parameters | |
---|---|
cal |
Calendar : The calendar system for which a date/time format is desired. |
dateStyle |
int : The type of date format desired. This can be
DateFormat#SHORT , DateFormat#MEDIUM ,
etc. |
timeStyle |
int : The type of time format desired. This can be
DateFormat#SHORT , DateFormat#MEDIUM ,
etc. |
Returns | |
---|---|
DateFormat |
See also:
getInstance
public static final DateFormat getInstance (Calendar cal, ULocale locale)
Returns a date/time formatter that uses the SHORT style for both the date and the time.
Parameters | |
---|---|
cal |
Calendar : The calendar system for which a date/time format is desired. |
locale |
ULocale : The locale for which the date/time format is desired. |
Returns | |
---|---|
DateFormat |
getInstance
public static final DateFormat getInstance (Calendar cal)
Returns a default date/time formatter that uses the SHORT style for both the date and the time.
Parameters | |
---|---|
cal |
Calendar : The calendar system for which a date/time format is desired. |
Returns | |
---|---|
DateFormat |
getInstance
public static final DateFormat getInstance (Calendar cal, Locale locale)
Returns a date/time formatter that uses the SHORT style for both the date and the time.
Parameters | |
---|---|
cal |
Calendar : The calendar system for which a date/time format is desired. |
locale |
Locale : The locale for which the date/time format is desired. |
Returns | |
---|---|
DateFormat |
getInstance
public static final DateFormat getInstance ()
Returns a default date/time formatter that uses the SHORT style for both the date and the time.
Returns | |
---|---|
DateFormat |
getInstanceForSkeleton
public static final DateFormat getInstanceForSkeleton (Calendar cal, String skeleton, Locale locale)
[icu] Creates a DateFormat
object that can be used to format dates and
times in the calendar system specified by cal
.
Parameters | |
---|---|
cal |
Calendar : The calendar system for which a date/time format is desired. |
skeleton |
String : The skeleton that selects the fields to be formatted. (Uses the
DateTimePatternGenerator .) This can be
DateFormat#ABBR_MONTH , DateFormat#MONTH_WEEKDAY_DAY ,
etc. |
locale |
Locale : The locale for which the date/time format is desired. |
Returns | |
---|---|
DateFormat |
getInstanceForSkeleton
public static final DateFormat getInstanceForSkeleton (Calendar cal, String skeleton, ULocale locale)
[icu] Creates a DateFormat
object that can be used to format dates and
times in the calendar system specified by cal
.
Parameters | |
---|---|
cal |
Calendar : The calendar system for which a date/time format is desired. |
skeleton |
String : The skeleton that selects the fields to be formatted. (Uses the
DateTimePatternGenerator .) This can be
DateFormat#ABBR_MONTH , DateFormat#MONTH_WEEKDAY_DAY ,
etc. |
locale |
ULocale : The locale for which the date/time format is desired. |
Returns | |
---|---|
DateFormat |
getInstanceForSkeleton
public static final DateFormat getInstanceForSkeleton (String skeleton, ULocale locale)
[icu] Returns a DateFormat
object that can be used to format dates and times in
the given locale.
Parameters | |
---|---|
skeleton |
String : The skeleton that selects the fields to be formatted. (Uses the
DateTimePatternGenerator .) This can be DateFormat#ABBR_MONTH ,
DateFormat#MONTH_WEEKDAY_DAY , etc. |
locale |
ULocale : The locale for which the date/time format is desired. |
Returns | |
---|---|
DateFormat |
getInstanceForSkeleton
public static final DateFormat getInstanceForSkeleton (String skeleton, Locale locale)
[icu] Returns a DateFormat
object that can be used to format dates and times in
the given locale.
Parameters | |
---|---|
skeleton |
String : The skeleton that selects the fields to be formatted. (Uses the
DateTimePatternGenerator .) This can be DateFormat#ABBR_MONTH ,
DateFormat#MONTH_WEEKDAY_DAY , etc. |
locale |
Locale : The locale for which the date/time format is desired. |
Returns | |
---|---|
DateFormat |
getInstanceForSkeleton
public static final DateFormat getInstanceForSkeleton (String skeleton)
[icu] Returns a DateFormat
object that can be used to format dates and times in
the default locale.
Parameters | |
---|---|
skeleton |
String : The skeleton that selects the fields to be formatted. (Uses the
DateTimePatternGenerator .) This can be DateFormat#ABBR_MONTH ,
DateFormat#MONTH_WEEKDAY_DAY , etc. |
Returns | |
---|---|
DateFormat |
getNumberFormat
public NumberFormat getNumberFormat ()
Returns the number formatter which this date/time formatter uses to format and parse a time.
Returns | |
---|---|
NumberFormat |
the number formatter which this date/time formatter uses. |
getPatternInstance
public static final DateFormat getPatternInstance (String skeleton, Locale locale)
[icu] Returns a DateFormat
object that can be used to format dates and times in
the given locale.
The getInstanceForSkeleton methods are preferred over the getPatternInstance methods.
Parameters | |
---|---|
skeleton |
String : The skeleton that selects the fields to be formatted. (Uses the
DateTimePatternGenerator .) This can be DateFormat#ABBR_MONTH ,
DateFormat#MONTH_WEEKDAY_DAY , etc. |
locale |
Locale : The locale for which the date/time format is desired. |
Returns | |
---|---|
DateFormat |
getPatternInstance
public static final DateFormat getPatternInstance (String skeleton, ULocale locale)
[icu] Returns a DateFormat
object that can be used to format dates and times in
the given locale.
The getInstanceForSkeleton methods are preferred over the getPatternInstance methods.
Parameters | |
---|---|
skeleton |
String : The skeleton that selects the fields to be formatted. (Uses the
DateTimePatternGenerator .) This can be DateFormat#ABBR_MONTH ,
DateFormat#MONTH_WEEKDAY_DAY , etc. |
locale |
ULocale : The locale for which the date/time format is desired. |
Returns | |
---|---|
DateFormat |
getPatternInstance
public static final DateFormat getPatternInstance (String skeleton)
[icu] Returns a DateFormat
object that can be used to format dates and times in
the default locale.
The getInstanceForSkeleton methods are preferred over the getPatternInstance methods.
Parameters | |
---|---|
skeleton |
String : The skeleton that selects the fields to be formatted. (Uses the
DateTimePatternGenerator .) This can be DateFormat#ABBR_MONTH ,
DateFormat#MONTH_WEEKDAY_DAY , etc. |
Returns | |
---|---|
DateFormat |
getPatternInstance
public static final DateFormat getPatternInstance (Calendar cal, String skeleton, Locale locale)
[icu] Creates a DateFormat
object that can be used to format dates and
times in the calendar system specified by cal
.
The getInstanceForSkeleton methods are preferred over the getPatternInstance methods.
Parameters | |
---|---|
cal |
Calendar : The calendar system for which a date/time format is desired. |
skeleton |
String : The skeleton that selects the fields to be formatted. (Uses the
DateTimePatternGenerator .) This can be
DateFormat#ABBR_MONTH , DateFormat#MONTH_WEEKDAY_DAY ,
etc. |
locale |
Locale : The locale for which the date/time format is desired. |
Returns | |
---|---|
DateFormat |
getPatternInstance
public static final DateFormat getPatternInstance (Calendar cal, String skeleton, ULocale locale)
[icu] Creates a DateFormat
object that can be used to format dates and
times in the calendar system specified by cal
.
The getInstanceForSkeleton methods are preferred over the getPatternInstance methods.
Parameters | |
---|---|
cal |
Calendar : The calendar system for which a date/time format is desired. |
skeleton |
String : The skeleton that selects the fields to be formatted. (Uses the
DateTimePatternGenerator .) This can be
DateFormat#ABBR_MONTH , DateFormat#MONTH_WEEKDAY_DAY ,
etc. |
locale |
ULocale : The locale for which the date/time format is desired. |
Returns | |
---|---|
DateFormat |
getTimeInstance
public static final DateFormat getTimeInstance (Calendar cal, int timeStyle)
Creates a DateFormat
object that can be used to format times in
the calendar system specified by cal
.
Parameters | |
---|---|
cal |
Calendar : The calendar system for which a time format is desired. |
timeStyle |
int : The type of time format desired. This can be
DateFormat#SHORT , DateFormat#MEDIUM ,
etc. |
Returns | |
---|---|
DateFormat |
See also:
getTimeInstance
public static final DateFormat getTimeInstance ()
Gets the time formatter with the default formatting style
for the default FORMAT
locale.
Returns | |
---|---|
DateFormat |
a time formatter. |
See also:
getTimeInstance
public static final DateFormat getTimeInstance (int style, ULocale locale)
Returns the time formatter with the given formatting style for the given locale.
Parameters | |
---|---|
style |
int : the given formatting style. For example,
SHORT for "h:mm a" in the US locale. Relative time styles are not currently
supported, and behave just like the corresponding non-relative style. |
locale |
ULocale : the given ulocale. |
Returns | |
---|---|
DateFormat |
a time formatter. |
getTimeInstance
public static final DateFormat getTimeInstance (Calendar cal, int timeStyle, ULocale locale)
Creates a DateFormat
object that can be used to format times in
the calendar system specified by cal
.
Parameters | |
---|---|
cal |
Calendar : The calendar system for which a time format is desired. |
timeStyle |
int : The type of time format desired. This can be
DateFormat#SHORT , DateFormat#MEDIUM ,
etc. |
locale |
ULocale : The locale for which the time format is desired. |
Returns | |
---|---|
DateFormat |
See also:
getTimeInstance
public static final DateFormat getTimeInstance (Calendar cal, int timeStyle, Locale locale)
Creates a DateFormat
object that can be used to format times in
the calendar system specified by cal
.
Parameters | |
---|---|
cal |
Calendar : The calendar system for which a time format is desired. |
timeStyle |
int : The type of time format desired. This can be
DateFormat#SHORT , DateFormat#MEDIUM ,
etc. |
locale |
Locale : The locale for which the time format is desired. |
Returns | |
---|---|
DateFormat |
See also:
getTimeInstance
public static final DateFormat getTimeInstance (int style)
Returns the time formatter with the given formatting style
for the default FORMAT
locale.
Parameters | |
---|---|
style |
int : the given formatting style. For example,
SHORT for "h:mm a" in the US locale. Relative time styles are not currently
supported, and behave just like the corresponding non-relative style. |
Returns | |
---|---|
DateFormat |
a time formatter. |
See also:
getTimeInstance
public static final DateFormat getTimeInstance (int style, Locale aLocale)
Returns the time formatter with the given formatting style for the given locale.
Parameters | |
---|---|
style |
int : the given formatting style. For example,
SHORT for "h:mm a" in the US locale. Relative time styles are not currently
supported, and behave just like the corresponding non-relative style. |
aLocale |
Locale : the given locale. |
Returns | |
---|---|
DateFormat |
a time formatter. |
getTimeZone
public TimeZone getTimeZone ()
Returns the time zone.
Returns | |
---|---|
TimeZone |
the time zone associated with the calendar of DateFormat. |
hashCode
public int hashCode ()
Overrides hashCode.
Returns | |
---|---|
int |
a hash code value for this object. |
isCalendarLenient
public boolean isCalendarLenient ()
Returns whether date/time parsing in the encapsulated Calendar object is lenient.
Returns | |
---|---|
boolean |
isLenient
public boolean isLenient ()
Returns whether both date/time parsing in the encapsulated Calendar object and DateFormat whitespace & numeric processing is lenient.
Returns | |
---|---|
boolean |
parse
public Date parse (String text)
Parses a date/time string. For example, a time text "07/10/96 4:5 PM, PDT" will be parsed into a Date that is equivalent to Date(837039928046). Parsing begins at the beginning of the string and proceeds as far as possible. Assuming no parse errors were encountered, this function doesn't return any information about how much of the string was consumed by the parsing. If you need that information, use a version of parse() that takes a ParsePosition.
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).
Note that the normal date formats associated with some calendars - such as the Chinese lunar calendar - do not specify enough fields to enable dates to be parsed unambiguously. In the case of the Chinese lunar calendar, while the year within the current 60-year cycle is specified, the number of such cycles since the start date of the calendar (in the ERA field of the Calendar object) is not normally part of the format, and parsing may assume the wrong era. For cases such as this it is recommended that clients parse using the parse method that takes a Calendar with the Calendar passed in set to the current date, or to a date within the era/cycle that should be assumed if absent in the format.
Parameters | |
---|---|
text |
String : The date/time string to be parsed |
Returns | |
---|---|
Date |
A Date, or null if the input could not be parsed |
Throws | |
---|---|
ParseException |
If the given string cannot be parsed as a date. |
See also:
parse
public Date parse (String text, ParsePosition pos)
Parses a date/time string according to the given parse position. For example, a time text "07/10/96 4:5 PM, PDT" will be parsed into a Date that is equivalent to Date(837039928046).
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).
Note that the normal date formats associated with some calendars - such as the Chinese lunar calendar - do not specify enough fields to enable dates to be parsed unambiguously. In the case of the Chinese lunar calendar, while the year within the current 60-year cycle is specified, the number of such cycles since the start date of the calendar (in the ERA field of the Calendar object) is not normally part of the format, and parsing may assume the wrong era. For cases such as this it is recommended that clients parse using the parse method that takes a Calendar with the Calendar passed in set to the current date, or to a date within the era/cycle that should be assumed if absent in the format.
Parameters | |
---|---|
text |
String : The date/time string to be parsed |
pos |
ParsePosition : On input, the position at which to start parsing; on
output, the position at which parsing terminated, or the
start position if the parse failed. |
Returns | |
---|---|
Date |
A Date, or null if the input could not be parsed |
See also:
parse
public abstract void parse (String text, Calendar cal, ParsePosition pos)
Parses a date/time string according to the given parse position. For example, a time text "07/10/96 4:5 PM, PDT" will be parsed into a Calendar that is equivalent to Date(837039928046). Before calling this method the caller should initialize the calendar in one of two ways (unless existing field information is to be kept): (1) clear the calendar, or (2) set the calendar to the current date (or to any date whose fields should be used to supply values that are missing in the parsed date). For example, Chinese calendar dates do not normally provide an era/cycle; in this case the calendar that is passed in should be set to a date within the era that should be assumed, normally the current era.
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).
Parameters | |
---|---|
text |
String : The date/time string to be parsed |
cal |
Calendar : The calendar set on input to the date and time to be used
for missing values in the date/time string being parsed,
and set on output to the parsed date/time. In general, this
should be initialized before calling this method - either
cleared or set to the current date, depending on desired
behavior. If this parse fails, the calendar may still
have been modified. When the calendar type is different
from the internal calendar held by this DateFormat
instance, calendar field values will be parsed based
on the internal calendar initialized with the time and
the time zone taken from this calendar, then the
parse result (time in milliseconds and time zone) will
be set back to this calendar. |
pos |
ParsePosition : On input, the position at which to start parsing; on
output, the position at which parsing terminated, or the
start position if the parse failed. |
See also:
parseObject
public Object parseObject (String source, ParsePosition pos)
Parses a date/time string into an Object. This convenience method simply calls parse(String, ParsePosition).
Parameters | |
---|---|
source |
String : A String , part of which should be parsed. |
pos |
ParsePosition : A ParsePosition object with index and error
index information as described above. |
Returns | |
---|---|
Object |
An Object parsed from the string. In case of
error, returns null. |
See also:
setBooleanAttribute
public DateFormat setBooleanAttribute (DateFormat.BooleanAttribute key, boolean value)
Sets a boolean attribute for this instance. Aspects of DateFormat leniency are controlled by boolean attributes.
Parameters | |
---|---|
key |
DateFormat.BooleanAttribute |
value |
boolean |
Returns | |
---|---|
DateFormat |
See also:
setCalendar
public void setCalendar (Calendar newCalendar)
Sets the calendar to be used by this date format. Initially, the default calendar for the specified or default locale is used.
Parameters | |
---|---|
newCalendar |
Calendar : the new Calendar to be used by the date format |
setCalendarLenient
public void setCalendarLenient (boolean lenient)
Specifies whether date/time parsing in the encapsulated Calendar object should be lenient. With lenient parsing, the parser may use heuristics to interpret inputs that do not precisely match this object's format. Without lenient parsing, inputs must match this object's format more closely.
Parameters | |
---|---|
lenient |
boolean : when true, Calendar parsing is lenient |
See also:
setContext
public void setContext (DisplayContext context)
[icu] Set a particular DisplayContext value in the formatter, such as CAPITALIZATION_FOR_STANDALONE.
Parameters | |
---|---|
context |
DisplayContext : The DisplayContext value to set. |
setLenient
public void setLenient (boolean lenient)
Specifies whether date/time parsing is to be lenient. With
lenient parsing, the parser may use heuristics to interpret inputs that
do not precisely match this object's format. Without lenient parsing,
inputs must match this object's format more closely.
Note: ICU 53 introduced finer grained control of leniency (and added
new control points) making the preferred method a combination of
setCalendarLenient() & setBooleanAttribute() calls.
This method supports prior functionality but may not support all
future leniency control & behavior of DateFormat. For control of pre 53 leniency,
Calendar and DateFormat whitespace & numeric tolerance, this method is safe to
use. However, mixing leniency control via this method and modification of the
newer attributes via setBooleanAttribute() may produce undesirable
results.
Parameters | |
---|---|
lenient |
boolean : True specifies date/time interpretation to be lenient. |
setNumberFormat
public void setNumberFormat (NumberFormat newNumberFormat)
Sets the number formatter.
Parameters | |
---|---|
newNumberFormat |
NumberFormat : the given new NumberFormat. |
setTimeZone
public void setTimeZone (TimeZone zone)
Sets the time zone for the calendar of this DateFormat object.
Parameters | |
---|---|
zone |
TimeZone : the given new time zone. |
Content and code samples on this page are subject to the licenses described in the Content License. Java and OpenJDK are trademarks or registered trademarks of Oracle and/or its affiliates.
Last updated 2024-04-04 UTC.