public class DateFormat extends Object
Most callers should avoid supplying their own format strings to this
class' format
methods and rely on the correctly localized ones
supplied by the system. This class' factory methods return
appropriately-localized DateFormat
instances, suitable
for both formatting and parsing dates. For the canonical documentation
of format strings, see SimpleDateFormat
.
The format methods in this class takes as inputs a format string and a representation of a date/time.
The format string controls how the output is generated.
This class only supports a subset of the full Unicode specification.
Use SimpleDateFormat
if you need more.
Formatting characters may be repeated in order to get more detailed representations
of that field. For instance, the format character 'M' is used to
represent the month. Depending on how many times that character is repeated
you get a different representation.
For the month of September:
M -> 9
MM -> 09
MMM -> Sep
MMMM -> September
The effects of the duplication vary depending on the nature of the field.
See the notes on the individual field formatters for details. For purely numeric
fields such as HOUR
adding more copies of the designator will
zero-pad the value to that number of characters.
For 7 minutes past the hour:
m -> 7
mm -> 07
mmm -> 007
mmmm -> 0007
Examples for April 6, 1970 at 3:23am:
"MM/dd/yy h:mmaa" -> "04/06/70 3:23am"
"MMM dd, yyyy h:mmaa" -> "Apr 6, 1970 3:23am"
"MMMM dd, yyyy h:mmaa" -> "April 6, 1970 3:23am"
"E, MMMM dd, yyyy h:mmaa" -> "Mon, April 6, 1970 3:23am&
"EEEE, MMMM dd, yyyy h:mmaa" -> "Monday, April 6, 1970 3:23am"
"'Noteworthy day: 'M/d/yy" -> "Noteworthy day: 4/6/70"
Modifier and Type | Field and Description |
---|---|
static char |
AM_PM
This designator indicates whether the
HOUR field is before
or after noon. |
static char |
CAPITAL_AM_PM
This designator indicates whether the
HOUR field is before
or after noon. |
static char |
DATE
This designator indicates the day of the month.
|
static char |
DAY
This designator indicates the name of the day of the week.
|
static char |
HOUR
This designator indicates the hour of the day in 12 hour format.
|
static char |
HOUR_OF_DAY
This designator indicates the hour of the day in 24 hour format.
|
static char |
MINUTE
This designator indicates the minute of the hour.
|
static char |
MONTH
This designator indicates the month of the year.
|
static char |
QUOTE
Text in the format string that should be copied verbatim rather that
interpreted as formatting codes must be surrounded by the
QUOTE
character. |
static char |
SECONDS
This designator indicates the seconds of the minute.
|
static char |
STANDALONE_MONTH
This designator indicates the standalone month of the year,
necessary in some format strings in some languages.
|
static char |
TIME_ZONE
This designator indicates the offset of the timezone from GMT.
|
static char |
YEAR
This designator indicates the year.
|
Constructor and Description |
---|
DateFormat() |
Modifier and Type | Method and Description |
---|---|
static CharSequence |
format(CharSequence inFormat,
Calendar inDate)
Given a format string and a
Calendar object, returns a CharSequence
containing the requested date. |
static CharSequence |
format(CharSequence inFormat,
Date inDate)
Given a format string and a
Date object, returns a CharSequence containing
the requested date. |
static CharSequence |
format(CharSequence inFormat,
long inTimeInMillis)
Given a format string and a time in milliseconds since Jan 1, 1970 GMT, returns a
CharSequence containing the requested date.
|
static DateFormat |
getDateFormat(Context context)
Returns a
DateFormat object that can format the date
in short form (such as 12/31/1999) according
to the current locale and the user's date-order preference. |
static DateFormat |
getDateFormatForSetting(Context context,
String value)
Returns a
DateFormat object to format the date
as if the date format setting were set to value ,
including null to use the locale's default format. |
static char[] |
getDateFormatOrder(Context context)
Gets the current date format stored as a char array.
|
static DateFormat |
getLongDateFormat(Context context)
Returns a
DateFormat object that can format the date
in long form (such as December 31, 1999) for the current locale. |
static DateFormat |
getMediumDateFormat(Context context)
Returns a
DateFormat object that can format the date
in medium form (such as Dec. |
static DateFormat |
getTimeFormat(Context context)
Returns a
DateFormat object that can format the time according
to the current locale and the user's 12-/24-hour clock preference. |
static boolean |
hasSeconds(CharSequence inFormat)
Indicates whether the specified format string contains seconds.
|
static boolean |
is24HourFormat(Context context)
Returns true if user preference is set to 24-hour format.
|
public static final char QUOTE
QUOTE
character. If you need to embed a literal QUOTE
character in
the output text then use two in a row.public static final char AM_PM
HOUR
field is before
or after noon. The output is lower-case.
Examples:
a -> a or p
aa -> am or pmpublic static final char CAPITAL_AM_PM
HOUR
field is before
or after noon. The output is capitalized.
Examples:
A -> A or P
AA -> AM or PMpublic static final char DATE
public static final char DAY
public static final char HOUR
public static final char HOUR_OF_DAY
public static final char MINUTE
public static final char MONTH
STANDALONE_MONTH
.
Examples for September:
M -> 9
MM -> 09
MMM -> Sep
MMMM -> Septemberpublic static final char STANDALONE_MONTH
public static final char SECONDS
public static final char TIME_ZONE
public static final char YEAR
public static boolean is24HourFormat(Context context)
context
- the context to use for the content resolverpublic static DateFormat getTimeFormat(Context context)
DateFormat
object that can format the time according
to the current locale and the user's 12-/24-hour clock preference.context
- the application contextDateFormat
object that properly formats the time.public static DateFormat getDateFormat(Context context)
DateFormat
object that can format the date
in short form (such as 12/31/1999) according
to the current locale and the user's date-order preference.context
- the application contextDateFormat
object that properly formats the date.public static DateFormat getDateFormatForSetting(Context context, String value)
DateFormat
object to format the date
as if the date format setting were set to value
,
including null to use the locale's default format.context
- the application contextvalue
- the date format setting string to interpret for
the current localepublic static DateFormat getLongDateFormat(Context context)
DateFormat
object that can format the date
in long form (such as December 31, 1999) for the current locale.context
- the application contextDateFormat
object that formats the date in long form.public static DateFormat getMediumDateFormat(Context context)
DateFormat
object that can format the date
in medium form (such as Dec. 31, 1999) for the current locale.context
- the application contextDateFormat
object that formats the date in long form.public static char[] getDateFormatOrder(Context context)
DATE
, MONTH
, and YEAR
) in the order
specified by the user's format preference. Note that this order is
only appropriate for all-numeric dates; spelled-out (MEDIUM and LONG)
dates will generally contain other punctuation, spaces, or words,
not just the day, month, and year, and not necessarily in the same
order returned here.public static CharSequence format(CharSequence inFormat, long inTimeInMillis)
inFormat
- the format string, as described in DateFormat
inTimeInMillis
- in milliseconds since Jan 1, 1970 GMTCharSequence
containing the requested textpublic static CharSequence format(CharSequence inFormat, Date inDate)
Date
object, returns a CharSequence containing
the requested date.inFormat
- the format string, as described in DateFormat
inDate
- the date to formatCharSequence
containing the requested textpublic static boolean hasSeconds(CharSequence inFormat)
inFormat
- the format string, as described in DateFormat
SECONDS
, false otherwisepublic static CharSequence format(CharSequence inFormat, Calendar inDate)
Calendar
object, returns a CharSequence
containing the requested date.inFormat
- the format string, as described in DateFormat
inDate
- the date to formatCharSequence
containing the requested text