Class DateFormatUtils


  • public class DateFormatUtils
    extends Object

    Date and time formatting utilities and constants.

    Formatting is performed using the FastDateFormat class.

    Since:
    2.0
    Version:
    $Id: DateFormatUtils.java 905636 2010-02-02 14:03:32Z niallp $
    • Field Detail

      • ISO_DATETIME_FORMAT

        public static final FastDateFormat ISO_DATETIME_FORMAT
        ISO8601 formatter for date-time without time zone. The format used is yyyy-MM-dd'T'HH:mm:ss.
      • ISO_DATETIME_TIME_ZONE_FORMAT

        public static final FastDateFormat ISO_DATETIME_TIME_ZONE_FORMAT
        ISO8601 formatter for date-time with time zone. The format used is yyyy-MM-dd'T'HH:mm:ssZZ.
      • ISO_DATE_FORMAT

        public static final FastDateFormat ISO_DATE_FORMAT
        ISO8601 formatter for date without time zone. The format used is yyyy-MM-dd.
      • ISO_DATE_TIME_ZONE_FORMAT

        public static final FastDateFormat ISO_DATE_TIME_ZONE_FORMAT
        ISO8601-like formatter for date with time zone. The format used is yyyy-MM-ddZZ. This pattern does not comply with the formal ISO8601 specification as the standard does not allow a time zone without a time.
      • ISO_TIME_FORMAT

        public static final FastDateFormat ISO_TIME_FORMAT
        ISO8601 formatter for time without time zone. The format used is 'T'HH:mm:ss.
      • ISO_TIME_TIME_ZONE_FORMAT

        public static final FastDateFormat ISO_TIME_TIME_ZONE_FORMAT
        ISO8601 formatter for time with time zone. The format used is 'T'HH:mm:ssZZ.
      • ISO_TIME_NO_T_FORMAT

        public static final FastDateFormat ISO_TIME_NO_T_FORMAT
        ISO8601-like formatter for time without time zone. The format used is HH:mm:ss. This pattern does not comply with the formal ISO8601 specification as the standard requires the 'T' prefix for times.
      • ISO_TIME_NO_T_TIME_ZONE_FORMAT

        public static final FastDateFormat ISO_TIME_NO_T_TIME_ZONE_FORMAT
        ISO8601-like formatter for time with time zone. The format used is HH:mm:ssZZ. This pattern does not comply with the formal ISO8601 specification as the standard requires the 'T' prefix for times.
      • 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 Z in US locale.
    • Constructor Detail

      • DateFormatUtils

        public DateFormatUtils()

        DateFormatUtils instances should NOT be constructed in standard programming.

        This constructor is public to permit tools that require a JavaBean instance to operate.

    • Method Detail

      • formatUTC

        public static String formatUTC​(long millis,
                                       String pattern)

        Formats a date/time into a specific pattern using the UTC time zone.

        Parameters:
        millis - the date to format expressed in milliseconds
        pattern - the pattern to use to format the date
        Returns:
        the formatted date
      • formatUTC

        public static String formatUTC​(Date date,
                                       String pattern)

        Formats a date/time into a specific pattern using the UTC time zone.

        Parameters:
        date - the date to format
        pattern - the pattern to use to format the date
        Returns:
        the formatted date
      • formatUTC

        public static String formatUTC​(long millis,
                                       String pattern,
                                       Locale locale)

        Formats a date/time into a specific pattern using the UTC time zone.

        Parameters:
        millis - the date to format expressed in milliseconds
        pattern - the pattern to use to format the date
        locale - the locale to use, may be null
        Returns:
        the formatted date
      • formatUTC

        public static String formatUTC​(Date date,
                                       String pattern,
                                       Locale locale)

        Formats a date/time into a specific pattern using the UTC time zone.

        Parameters:
        date - the date to format
        pattern - the pattern to use to format the date
        locale - the locale to use, may be null
        Returns:
        the formatted date
      • format

        public static String format​(long millis,
                                    String pattern)

        Formats a date/time into a specific pattern.

        Parameters:
        millis - the date to format expressed in milliseconds
        pattern - the pattern to use to format the date
        Returns:
        the formatted date
      • format

        public static String format​(Date date,
                                    String pattern)

        Formats a date/time into a specific pattern.

        Parameters:
        date - the date to format
        pattern - the pattern to use to format the date
        Returns:
        the formatted date
      • format

        public static String format​(Calendar calendar,
                                    String pattern)

        Formats a calendar into a specific pattern.

        Parameters:
        calendar - the calendar to format
        pattern - the pattern to use to format the calendar
        Returns:
        the formatted calendar
        Since:
        2.4
        See Also:
        FastDateFormat.format(Calendar)
      • format

        public static String format​(long millis,
                                    String pattern,
                                    TimeZone timeZone)

        Formats a date/time into a specific pattern in a time zone.

        Parameters:
        millis - the time expressed in milliseconds
        pattern - the pattern to use to format the date
        timeZone - the time zone to use, may be null
        Returns:
        the formatted date
      • format

        public static String format​(Date date,
                                    String pattern,
                                    TimeZone timeZone)

        Formats a date/time into a specific pattern in a time zone.

        Parameters:
        date - the date to format
        pattern - the pattern to use to format the date
        timeZone - the time zone to use, may be null
        Returns:
        the formatted date
      • format

        public static String format​(Calendar calendar,
                                    String pattern,
                                    TimeZone timeZone)

        Formats a calendar into a specific pattern in a time zone.

        Parameters:
        calendar - the calendar to format
        pattern - the pattern to use to format the calendar
        timeZone - the time zone to use, may be null
        Returns:
        the formatted calendar
        Since:
        2.4
        See Also:
        FastDateFormat.format(Calendar)
      • format

        public static String format​(long millis,
                                    String pattern,
                                    Locale locale)

        Formats a date/time into a specific pattern in a locale.

        Parameters:
        millis - the date to format expressed in milliseconds
        pattern - the pattern to use to format the date
        locale - the locale to use, may be null
        Returns:
        the formatted date
      • format

        public static String format​(Date date,
                                    String pattern,
                                    Locale locale)

        Formats a date/time into a specific pattern in a locale.

        Parameters:
        date - the date to format
        pattern - the pattern to use to format the date
        locale - the locale to use, may be null
        Returns:
        the formatted date
      • format

        public static String format​(Calendar calendar,
                                    String pattern,
                                    Locale locale)

        Formats a calendar into a specific pattern in a locale.

        Parameters:
        calendar - the calendar to format
        pattern - the pattern to use to format the calendar
        locale - the locale to use, may be null
        Returns:
        the formatted calendar
        Since:
        2.4
        See Also:
        FastDateFormat.format(Calendar)
      • format

        public static String format​(long millis,
                                    String pattern,
                                    TimeZone timeZone,
                                    Locale locale)

        Formats a date/time into a specific pattern in a time zone and locale.

        Parameters:
        millis - the date to format expressed in milliseconds
        pattern - the pattern to use to format the date
        timeZone - the time zone to use, may be null
        locale - the locale to use, may be null
        Returns:
        the formatted date
      • format

        public static String format​(Date date,
                                    String pattern,
                                    TimeZone timeZone,
                                    Locale locale)

        Formats a date/time into a specific pattern in a time zone and locale.

        Parameters:
        date - the date to format
        pattern - the pattern to use to format the date
        timeZone - the time zone to use, may be null
        locale - the locale to use, may be null
        Returns:
        the formatted date
      • format

        public static String format​(Calendar calendar,
                                    String pattern,
                                    TimeZone timeZone,
                                    Locale locale)

        Formats a calendar into a specific pattern in a time zone and locale.

        Parameters:
        calendar - the calendar to format
        pattern - the pattern to use to format the calendar
        timeZone - the time zone to use, may be null
        locale - the locale to use, may be null
        Returns:
        the formatted calendar
        Since:
        2.4
        See Also:
        FastDateFormat.format(Calendar)