Class DateFormatUtils
- java.lang.Object
 - 
- org.apache.commons.lang3.time.DateFormatUtils
 
 
- 
public class DateFormatUtils extends java.lang.ObjectDate and time formatting utilities and constants.Formatting is performed using the thread-safe
FastDateFormatclass.Note that the JDK has a bug wherein calling Calendar.get(int) will override any previously called Calendar.clear() calls. See LANG-755.
Note that when using capital YYYY instead of lowercase yyyy, the formatter will assume current year as week year is not supported. See
GregorianCalendarWeek Year section for an explanation on the difference between calendar and week years.- Since:
 - 2.0
 
 
- 
- 
Field Summary
Fields Modifier and Type Field Description static FastDateFormatISO_8601_EXTENDED_DATE_FORMATISO 8601 formatter for date without time zone.static FastDateFormatISO_8601_EXTENDED_DATETIME_FORMATISO 8601 formatter for date-time without time zone.static FastDateFormatISO_8601_EXTENDED_DATETIME_TIME_ZONE_FORMATISO 8601 formatter for date-time with time zone.static FastDateFormatISO_8601_EXTENDED_TIME_FORMATISO 8601 formatter for time without time zone.static FastDateFormatISO_8601_EXTENDED_TIME_TIME_ZONE_FORMATISO 8601 formatter for time with time zone.static FastDateFormatISO_DATE_FORMATDeprecated.- as of 4.0, ISO_DATE_FORMAT will be replaced by ISO_8601_EXTENDED_DATE_FORMAT.static FastDateFormatISO_DATE_TIME_ZONE_FORMATDeprecated.- as of 4.0, ISO_DATE_TIME_ZONE_FORMAT will be removed.static FastDateFormatISO_DATETIME_FORMATDeprecated.- as of 4.0, ISO_DATETIME_FORMAT will be replaced by ISO_8601_EXTENDED_DATETIME_FORMAT.static FastDateFormatISO_DATETIME_TIME_ZONE_FORMATDeprecated.- as of 4.0, ISO_DATETIME_TIME_ZONE_FORMAT will be replaced by ISO_8601_EXTENDED_DATETIME_TIME_ZONE_FORMAT.static FastDateFormatISO_TIME_FORMATDeprecated.- as of 4.0, ISO_TIME_FORMAT will be removed.static FastDateFormatISO_TIME_NO_T_FORMATDeprecated.- as of 4.0, ISO_TIME_NO_T_FORMAT will be replaced by ISO_8601_EXTENDED_TIME_FORMAT.static FastDateFormatISO_TIME_NO_T_TIME_ZONE_FORMATDeprecated.- as of 4.0, ISO_TIME_NO_T_TIME_ZONE_FORMAT will be replaced by ISO_8601_EXTENDED_TIME_TIME_ZONE_FORMAT.static FastDateFormatISO_TIME_TIME_ZONE_FORMATDeprecated.- as of 4.0, ISO_TIME_TIME_ZONE_FORMAT will be removed.static FastDateFormatSMTP_DATETIME_FORMATSMTP (and probably other) date headers. 
- 
Constructor Summary
Constructors Constructor Description DateFormatUtils()DateFormatUtils instances should NOT be constructed in standard programming. 
- 
Method Summary
All Methods Static Methods Concrete Methods Modifier and Type Method Description static java.lang.Stringformat(long millis, java.lang.String pattern)Formats a date/time into a specific pattern.static java.lang.Stringformat(long millis, java.lang.String pattern, java.util.Locale locale)Formats a date/time into a specific pattern in a locale.static java.lang.Stringformat(long millis, java.lang.String pattern, java.util.TimeZone timeZone)Formats a date/time into a specific pattern in a time zone.static java.lang.Stringformat(long millis, java.lang.String pattern, java.util.TimeZone timeZone, java.util.Locale locale)Formats a date/time into a specific pattern in a time zone and locale.static java.lang.Stringformat(java.util.Calendar calendar, java.lang.String pattern)Formats a calendar into a specific pattern.static java.lang.Stringformat(java.util.Calendar calendar, java.lang.String pattern, java.util.Locale locale)Formats a calendar into a specific pattern in a locale.static java.lang.Stringformat(java.util.Calendar calendar, java.lang.String pattern, java.util.TimeZone timeZone)Formats a calendar into a specific pattern in a time zone.static java.lang.Stringformat(java.util.Calendar calendar, java.lang.String pattern, java.util.TimeZone timeZone, java.util.Locale locale)Formats a calendar into a specific pattern in a time zone and locale.static java.lang.Stringformat(java.util.Date date, java.lang.String pattern)Formats a date/time into a specific pattern.static java.lang.Stringformat(java.util.Date date, java.lang.String pattern, java.util.Locale locale)Formats a date/time into a specific pattern in a locale.static java.lang.Stringformat(java.util.Date date, java.lang.String pattern, java.util.TimeZone timeZone)Formats a date/time into a specific pattern in a time zone.static java.lang.Stringformat(java.util.Date date, java.lang.String pattern, java.util.TimeZone timeZone, java.util.Locale locale)Formats a date/time into a specific pattern in a time zone and locale.static java.lang.StringformatUTC(long millis, java.lang.String pattern)Formats a date/time into a specific pattern using the UTC time zone.static java.lang.StringformatUTC(long millis, java.lang.String pattern, java.util.Locale locale)Formats a date/time into a specific pattern using the UTC time zone.static java.lang.StringformatUTC(java.util.Date date, java.lang.String pattern)Formats a date/time into a specific pattern using the UTC time zone.static java.lang.StringformatUTC(java.util.Date date, java.lang.String pattern, java.util.Locale locale)Formats a date/time into a specific pattern using the UTC time zone. 
 - 
 
- 
- 
Field Detail
- 
ISO_8601_EXTENDED_DATETIME_FORMAT
public static final FastDateFormat ISO_8601_EXTENDED_DATETIME_FORMAT
ISO 8601 formatter for date-time without time zone.The format used is
yyyy-MM-dd'T'HH:mm:ss. This format uses the default TimeZone in effect at the time of loading DateFormatUtils class.- Since:
 - 3.5
 
 
- 
ISO_DATETIME_FORMAT
@Deprecated public static final FastDateFormat ISO_DATETIME_FORMAT
Deprecated.- as of 4.0, ISO_DATETIME_FORMAT will be replaced by ISO_8601_EXTENDED_DATETIME_FORMAT. 
- 
ISO_8601_EXTENDED_DATETIME_TIME_ZONE_FORMAT
public static final FastDateFormat ISO_8601_EXTENDED_DATETIME_TIME_ZONE_FORMAT
ISO 8601 formatter for date-time with time zone.The format used is
yyyy-MM-dd'T'HH:mm:ssZZ. This format uses the default TimeZone in effect at the time of loading DateFormatUtils class.- Since:
 - 3.5
 
 
- 
ISO_DATETIME_TIME_ZONE_FORMAT
@Deprecated public static final FastDateFormat ISO_DATETIME_TIME_ZONE_FORMAT
Deprecated.- as of 4.0, ISO_DATETIME_TIME_ZONE_FORMAT will be replaced by ISO_8601_EXTENDED_DATETIME_TIME_ZONE_FORMAT. 
- 
ISO_8601_EXTENDED_DATE_FORMAT
public static final FastDateFormat ISO_8601_EXTENDED_DATE_FORMAT
ISO 8601 formatter for date without time zone.The format used is
yyyy-MM-dd. This format uses the default TimeZone in effect at the time of loading DateFormatUtils class.- Since:
 - 3.5
 
 
- 
ISO_DATE_FORMAT
@Deprecated public static final FastDateFormat ISO_DATE_FORMAT
Deprecated.- as of 4.0, ISO_DATE_FORMAT will be replaced by ISO_8601_EXTENDED_DATE_FORMAT. 
- 
ISO_DATE_TIME_ZONE_FORMAT
@Deprecated public static final FastDateFormat ISO_DATE_TIME_ZONE_FORMAT
Deprecated.- as of 4.0, ISO_DATE_TIME_ZONE_FORMAT will be removed.ISO 8601-like formatter for date with time zone.The format used is
yyyy-MM-ddZZ. This pattern does not comply with the formal ISO 8601 specification as the standard does not allow a time zone without a time. This format uses the default TimeZone in effect at the time of loading DateFormatUtils class. 
- 
ISO_TIME_FORMAT
@Deprecated public static final FastDateFormat ISO_TIME_FORMAT
Deprecated.- as of 4.0, ISO_TIME_FORMAT will be removed.Non-compliant formatter for time without time zone (ISO 8601 does not prefix 'T' for standalone time value).The format used is
'T'HH:mm:ss. This format uses the default TimeZone in effect at the time of loading DateFormatUtils class. 
- 
ISO_TIME_TIME_ZONE_FORMAT
@Deprecated public static final FastDateFormat ISO_TIME_TIME_ZONE_FORMAT
Deprecated.- as of 4.0, ISO_TIME_TIME_ZONE_FORMAT will be removed.Non-compliant formatter for time with time zone (ISO 8601 does not prefix 'T' for standalone time value).The format used is
'T'HH:mm:ssZZ. This format uses the default TimeZone in effect at the time of loading DateFormatUtils class. 
- 
ISO_8601_EXTENDED_TIME_FORMAT
public static final FastDateFormat ISO_8601_EXTENDED_TIME_FORMAT
ISO 8601 formatter for time without time zone.The format used is
HH:mm:ss. This format uses the default TimeZone in effect at the time of loading DateFormatUtils class.- Since:
 - 3.5
 
 
- 
ISO_TIME_NO_T_FORMAT
@Deprecated public static final FastDateFormat ISO_TIME_NO_T_FORMAT
Deprecated.- as of 4.0, ISO_TIME_NO_T_FORMAT will be replaced by ISO_8601_EXTENDED_TIME_FORMAT. 
- 
ISO_8601_EXTENDED_TIME_TIME_ZONE_FORMAT
public static final FastDateFormat ISO_8601_EXTENDED_TIME_TIME_ZONE_FORMAT
ISO 8601 formatter for time with time zone.The format used is
HH:mm:ssZZ. This format uses the default TimeZone in effect at the time of loading DateFormatUtils class.- Since:
 - 3.5
 
 
- 
ISO_TIME_NO_T_TIME_ZONE_FORMAT
@Deprecated public static final FastDateFormat ISO_TIME_NO_T_TIME_ZONE_FORMAT
Deprecated.- as of 4.0, ISO_TIME_NO_T_TIME_ZONE_FORMAT will be replaced by ISO_8601_EXTENDED_TIME_TIME_ZONE_FORMAT. 
- 
SMTP_DATETIME_FORMAT
public static final FastDateFormat SMTP_DATETIME_FORMAT
SMTP (and probably other) date headers.The format used is
EEE, dd MMM yyyy HH:mm:ss Zin US locale. This format uses the default TimeZone in effect at the time of loading DateFormatUtils class. 
 - 
 
- 
Method Detail
- 
format
public static java.lang.String format(java.util.Calendar calendar, java.lang.String pattern)Formats a calendar into a specific pattern. The TimeZone from the calendar will be used for formatting.- Parameters:
 calendar- the calendar to format, not nullpattern- the pattern to use to format the calendar, not null- Returns:
 - the formatted calendar
 - Since:
 - 2.4
 - See Also:
 FastDateFormat.format(Calendar)
 
- 
format
public static java.lang.String format(java.util.Calendar calendar, java.lang.String pattern, java.util.Locale locale)Formats a calendar into a specific pattern in a locale. The TimeZone from the calendar will be used for formatting.- Parameters:
 calendar- the calendar to format, not nullpattern- the pattern to use to format the calendar, not nulllocale- the locale to use, may benull- Returns:
 - the formatted calendar
 - Since:
 - 2.4
 - See Also:
 FastDateFormat.format(Calendar)
 
- 
format
public static java.lang.String format(java.util.Calendar calendar, java.lang.String pattern, java.util.TimeZone timeZone)Formats a calendar into a specific pattern in a time zone.- Parameters:
 calendar- the calendar to format, not nullpattern- the pattern to use to format the calendar, not nulltimeZone- the time zone to use, may benull- Returns:
 - the formatted calendar
 - Since:
 - 2.4
 - See Also:
 FastDateFormat.format(Calendar)
 
- 
format
public static java.lang.String format(java.util.Calendar calendar, java.lang.String pattern, java.util.TimeZone timeZone, java.util.Locale locale)Formats a calendar into a specific pattern in a time zone and locale.- Parameters:
 calendar- the calendar to format, not nullpattern- the pattern to use to format the calendar, not nulltimeZone- the time zone to use, may benulllocale- the locale to use, may benull- Returns:
 - the formatted calendar
 - Since:
 - 2.4
 - See Also:
 FastDateFormat.format(Calendar)
 
- 
format
public static java.lang.String format(java.util.Date date, java.lang.String pattern)Formats a date/time into a specific pattern.- Parameters:
 date- the date to format, not nullpattern- the pattern to use to format the date, not null- Returns:
 - the formatted date
 
 
- 
format
public static java.lang.String format(java.util.Date date, java.lang.String pattern, java.util.Locale locale)Formats a date/time into a specific pattern in a locale.- Parameters:
 date- the date to format, not nullpattern- the pattern to use to format the date, not nulllocale- the locale to use, may benull- Returns:
 - the formatted date
 
 
- 
format
public static java.lang.String format(java.util.Date date, java.lang.String pattern, java.util.TimeZone timeZone)Formats a date/time into a specific pattern in a time zone.- Parameters:
 date- the date to format, not nullpattern- the pattern to use to format the date, not nulltimeZone- the time zone to use, may benull- Returns:
 - the formatted date
 
 
- 
format
public static java.lang.String format(java.util.Date date, java.lang.String pattern, java.util.TimeZone timeZone, java.util.Locale locale)Formats a date/time into a specific pattern in a time zone and locale.- Parameters:
 date- the date to format, not nullpattern- the pattern to use to format the date, not null, not nulltimeZone- the time zone to use, may benulllocale- the locale to use, may benull- Returns:
 - the formatted date
 
 
- 
format
public static java.lang.String format(long millis, java.lang.String pattern)Formats a date/time into a specific pattern.- Parameters:
 millis- the date to format expressed in millisecondspattern- the pattern to use to format the date, not null- Returns:
 - the formatted date
 
 
- 
format
public static java.lang.String format(long millis, java.lang.String pattern, java.util.Locale locale)Formats a date/time into a specific pattern in a locale.- Parameters:
 millis- the date to format expressed in millisecondspattern- the pattern to use to format the date, not nulllocale- the locale to use, may benull- Returns:
 - the formatted date
 
 
- 
format
public static java.lang.String format(long millis, java.lang.String pattern, java.util.TimeZone timeZone)Formats a date/time into a specific pattern in a time zone.- Parameters:
 millis- the time expressed in millisecondspattern- the pattern to use to format the date, not nulltimeZone- the time zone to use, may benull- Returns:
 - the formatted date
 
 
- 
format
public static java.lang.String format(long millis, java.lang.String pattern, java.util.TimeZone timeZone, java.util.Locale locale)Formats a date/time into a specific pattern in a time zone and locale.- Parameters:
 millis- the date to format expressed in millisecondspattern- the pattern to use to format the date, not nulltimeZone- the time zone to use, may benulllocale- the locale to use, may benull- Returns:
 - the formatted date
 
 
- 
formatUTC
public static java.lang.String formatUTC(java.util.Date date, java.lang.String pattern)Formats a date/time into a specific pattern using the UTC time zone.- Parameters:
 date- the date to format, not nullpattern- the pattern to use to format the date, not null- Returns:
 - the formatted date
 
 
- 
formatUTC
public static java.lang.String formatUTC(java.util.Date date, java.lang.String pattern, java.util.Locale locale)Formats a date/time into a specific pattern using the UTC time zone.- Parameters:
 date- the date to format, not nullpattern- the pattern to use to format the date, not nulllocale- the locale to use, may benull- Returns:
 - the formatted date
 
 
- 
formatUTC
public static java.lang.String formatUTC(long millis, java.lang.String pattern)Formats a date/time into a specific pattern using the UTC time zone.- Parameters:
 millis- the date to format expressed in millisecondspattern- the pattern to use to format the date, not null- Returns:
 - the formatted date
 
 
- 
formatUTC
public static java.lang.String formatUTC(long millis, java.lang.String pattern, java.util.Locale locale)Formats a date/time into a specific pattern using the UTC time zone.- Parameters:
 millis- the date to format expressed in millisecondspattern- the pattern to use to format the date, not nulllocale- the locale to use, may benull- Returns:
 - the formatted date
 
 
 - 
 
 -