Class DateTimeFormatters
DateTimeFormatter
.
DateTimeFormatters is a utility class. All formatters returned are immutable and thread-safe.
-
Field Summary
FieldsModifier and TypeFieldDescriptionprivate static final DateTimeFormatter
Singleton date formatter.private static final DateTimeFormatter
Singleton date formatter.private static final DateTimeFormatter
Singleton date formatter.private static final DateTimeFormatter
Singleton date formatter.private static final DateTimeFormatter
Singleton date formatter.private static final DateTimeFormatter
Singleton date formatter.private static final DateTimeFormatter
Singleton date formatter.private static final DateTimeFormatter
Singleton date formatter.private static final DateTimeFormatter
Singleton date formatter.private static final DateTimeFormatter
Singleton date formatter.private static final DateTimeFormatter
Singleton date formatter.private static final DateTimeFormatter
Singleton date formatter.private static final DateTimeFormatter
Singleton date formatter.private static final DateTimeFormatter
Singleton date formatter. -
Constructor Summary
ConstructorsModifierConstructorDescriptionprivate
Private constructor since this is a utility class. -
Method Summary
Modifier and TypeMethodDescriptionstatic DateTimeFormatter
Returns the ISO date formatter that prints/parses a date without an offset.static DateTimeFormatter
date
(DateTimeFormatterBuilder.FormatStyle dateStyle, Locale locale) Returns a locale specific date format.static DateTimeFormatter
dateTime
(DateTimeFormatterBuilder.FormatStyle dateTimeStyle, Locale locale) Returns a locale specific date-time format, which is typically of short length.static DateTimeFormatter
dateTime
(DateTimeFormatterBuilder.FormatStyle dateStyle, DateTimeFormatterBuilder.FormatStyle timeStyle, Locale locale) Returns a locale specific date, time or date-time format.static DateTimeFormatter
Returns a locale specific date format, which is typically of full length.static DateTimeFormatter
fullDateTime
(Locale locale) Returns a locale specific date-time format, which is typically of full length.static DateTimeFormatter
Returns a locale specific time format, which is typically of full length.static DateTimeFormatter
isoDate()
Returns the ISO date formatter that prints/parses a date, with the offset and zone if available, such as '2007-12-03', '2007-12-03+01:00' or '2007-12-03+01:00[Europe/Paris]'.static DateTimeFormatter
Returns the ISO date formatter that prints/parses a date, with the offset and zone if available, such as '2007-12-03T10:15:30', '2007-12-03T10:15:30+01:00' or '2007-12-03T10:15:30+01:00[Europe/Paris]'.static DateTimeFormatter
Returns the ISO date formatter that prints/parses a local date without an offset, such as '2007-12-03'.static DateTimeFormatter
Returns the ISO date formatter that prints/parses a local date without an offset, such as '2007-12-03T10:15:30'.static DateTimeFormatter
Returns the ISO time formatter that prints/parses a local time, without an offset such as '10:15:30'.static DateTimeFormatter
Returns the ISO date formatter that prints/parses an offset date with an offset, such as '2007-12-03+01:00'.static DateTimeFormatter
Returns the ISO date formatter that prints/parses an offset date with an offset, such as '2007-12-03T10:15:30+01:00'.static DateTimeFormatter
Returns the ISO time formatter that prints/parses a local time, with an offset such as '10:15:30+01:00'.static DateTimeFormatter
Returns the ISO date formatter that prints/parses a date without an offset.static DateTimeFormatter
isoTime()
Returns the ISO time formatter that prints/parses a time, with the offset and zone if available, such as '10:15:30', '10:15:30+01:00' or '10:15:30+01:00[Europe/Paris]'.static DateTimeFormatter
Returns the ISO date formatter that prints/parses a date without an offset.static DateTimeFormatter
Returns the ISO date formatter that prints/parses an offset date with a zone, such as '2007-12-03T10:15:30+01:00[Europe/Paris]'.static DateTimeFormatter
Returns a locale specific date format, which is typically of long length.static DateTimeFormatter
longDateTime
(Locale locale) Returns a locale specific date-time format, which is typically of long length.static DateTimeFormatter
Returns a locale specific time format, which is typically of long length.static DateTimeFormatter
mediumDate
(Locale locale) Returns a locale specific date format of medium length.static DateTimeFormatter
mediumDateTime
(Locale locale) Returns a locale specific date-time format of medium length.static DateTimeFormatter
mediumTime
(Locale locale) Returns a locale specific time format of medium length.static DateTimeFormatter
Creates a formatter using the specified pattern.static DateTimeFormatter
Creates a formatter using the specified pattern.static DateTimeFormatter
rfc1123()
Returns the RFC-1123 date-time formatter.static DateTimeFormatter
Returns a locale specific date format of short length.static DateTimeFormatter
shortDateTime
(Locale locale) Returns a locale specific date-time format of short length.static DateTimeFormatter
Returns a locale specific time format of short length.static DateTimeFormatter
time
(DateTimeFormatterBuilder.FormatStyle timeStyle, Locale locale) Returns a locale specific time format.
-
Field Details
-
ISO_LOCAL_DATE
Singleton date formatter. -
ISO_OFFSET_DATE
Singleton date formatter. -
ISO_DATE
Singleton date formatter. -
ISO_LOCAL_TIME
Singleton date formatter. -
ISO_OFFSET_TIME
Singleton date formatter. -
ISO_TIME
Singleton date formatter. -
ISO_LOCAL_DATE_TIME
Singleton date formatter. -
ISO_OFFSET_DATE_TIME
Singleton date formatter. -
ISO_ZONED_DATE_TIME
Singleton date formatter. -
ISO_DATE_TIME
Singleton date formatter. -
ISO_ORDINAL_DATE
Singleton date formatter. -
ISO_WEEK_DATE
Singleton date formatter. -
BASIC_ISO_DATE
Singleton date formatter. -
RFC_1123_DATE_TIME
Singleton date formatter.
-
-
Constructor Details
-
DateTimeFormatters
private DateTimeFormatters()Private constructor since this is a utility class.
-
-
Method Details
-
pattern
Creates a formatter using the specified pattern.This method will create a formatter based on a simple pattern of letters and symbols. For example,
d MMM yyyy
will format 2008-12-03 as '3 Dec 2008'.The returned formatter will use the default locale, but this can be changed using
DateTimeFormatter.withLocale(Locale)
.All letters 'A' to 'Z' and 'a' to 'z' are reserved as pattern letters. The following pattern letters are defined:
Symbol Meaning Presentation Examples ------ ------- ------------ ------- y year year 2004; 04 D day-of-year number 189 M month-of-year month July; Jul; 07 d day-of-month number 10 Q quarter-of-year number 3 q month-of-quarter number 2 x week-based-year year 1996 w week-of-week-based-year number 27 e day-of-week number 2 E day-of-week text Tuesday; Tue F week-of-month number 3 a am-pm-of-day text PM h clock-hour-of-am-pm (1-12) number 12 K hour-of-am-pm (0-11) number/fraction 0 k clock-hour-of-am-pm (1-24) number 0 H hour-of-day (0-23) number/fraction 0 m minute-of-hour number/fraction 30 s second-of-minute number/fraction 55 S milli-of-second number/fraction 978 n nano-of-second number/fraction 987654321 I time-zone ID zoneID America/Los_Angeles z time-zone name text Pacific Standard Time; PST Z zone-offset offset -0800; -08:00; f make next a fraction fraction modifier .123 p pad next pad modifier 1 ' escape for text delimiter '' single quote literal ' [ optional section start ] optional section end
The count of pattern letters determine the format.
Text: If the number of pattern letters is 4 or more, the full textual form is used as per
DateTimeFormatterBuilder.TextStyle.FULL
. Otherwise a short form is used, as perDateTimeFormatterBuilder.TextStyle.SHORT
.Number: If the count of letters is one, then the value is printed using the minimum number of digits and without padding as per
DateTimeFormatterBuilder.appendValue(DateTimeFieldRule)
. Otherwise, the count of digits is used as the width of the output field as perDateTimeFormatterBuilder.appendValue(DateTimeFieldRule, int)
.Fraction modifier: Modifies the pattern that immediately follows to be a fraction. All fractional values must use the 'f' prefix to ensure correct parsing. The fraction also outputs the decimal point. If the count of 'f' is one, then the fractional value has the exact number of digits defined by the count of the value being output. If the count of 'f' is two or more, then the fractional value has the a minimum number of digits defined by the count of the value being output and a maximum output of nine digits.
For example, 'ssffnnn' outputs the second followed by 3-9 digits of the nanosecond, while 'mmfss' outputs the minute followed by exactly 2 digits representing the second.
Year: The count of letters determines the minimum field width below which padding is used. If the count of letters is two, then a
reduced
two digit form is used. For printing, this outputs the rightmost two digits. For parsing, this will parse using the base value of 2000, resulting in a year within the range 2000 to 2099 inclusive. If the count of letters is less than four (but not two), then the sign is only output for negative years as perDateTimeFormatterBuilder.SignStyle.NORMAL
. Otherwise, the sign is output if the pad width is exceeded, as perDateTimeFormatterBuilder.SignStyle.EXCEEDS_PAD
Month: If the count of letters is 3 or greater, use the Text rules above. Otherwise use the Number rules above.
ZoneID: 'I' outputs the zone id, such as 'Europe/Paris'.
Offset: 'Z' outputs offset without a colon, without seconds and '+0000' as the text for UTC. 'ZZ' outputs the offset with a colon, without seconds and '+00:00' as the text for UTC. 'ZZZ' outputs offset without a colon, with seconds and 'Z' as the text for UTC (ISO-8601 style). 'ZZZZ' outputs the offset with a colon, with seconds and 'Z' as the text for UTC (ISO-8601 style).
Zone names: Time zone names ('z') cannot be parsed.
Optional section: The optional section markers work exactly like calling
DateTimeFormatterBuilder.optionalStart()
andDateTimeFormatterBuilder.optionalEnd()
.Pad modifier: Modifies the pattern that immediately follows to be padded with spaces. The pad width is determined by the number of pattern letters. This is the same as calling
DateTimeFormatterBuilder.padNext(int)
.For example, 'ppH' outputs the hour-of-day padded on the left with spaces to a width of 2.
Any unrecognized letter will be output directly. However, since these are reserved, that may change in future versions. Any non-letter character, other than '[', ']' and the single quote will be output directly. Despite this, it is recommended to use single quotes around all characters that you want to output directly to ensure that future changes do not break your application.
The pattern string is similar, but not identical, to
SimpleDateFormat
. SimpleDateFormat pattern letters 'G' and 'W' are not available. Pattern letters 'x', 'Q', 'q', 'e', 'n', 'I', 'f' and 'p' are added. Letters 'y', 'z' and 'Z' have some differences.- Parameters:
pattern
- the pattern to use, not null- Returns:
- the formatter based on the pattern, never null
- Throws:
IllegalArgumentException
- if the pattern is invalid- See Also:
-
pattern
Creates a formatter using the specified pattern.This method will create a formatter based on a simple pattern of letters and symbols. For example,
d MMM yyyy
will format 2008-12-03 as '3 Dec 2008'.See
pattern(String)
for details of the pattern.The returned formatter will use the specified locale, but this can be changed using
DateTimeFormatter.withLocale(Locale)
.- Parameters:
pattern
- the pattern to use, not nulllocale
- the locale to use, not null- Returns:
- the formatter based on the pattern, never null
- Throws:
IllegalArgumentException
- if the pattern is invalid- See Also:
-
isoLocalDate
Returns the ISO date formatter that prints/parses a local date without an offset, such as '2007-12-03'.This is the ISO-8601 extended format:
yyyy-MM-dd
The year will print 4 digits, unless this is insufficient, in which case the full year will be printed together with a positive/negative sign.
- Returns:
- the ISO date formatter, never null
-
isoOffsetDate
Returns the ISO date formatter that prints/parses an offset date with an offset, such as '2007-12-03+01:00'.This is the ISO-8601 extended format:
yyyy-MM-ddZZ
The year will print 4 digits, unless this is insufficient, in which case the full year will be printed together with a positive/negative sign.
The offset will print and parse an offset with seconds even though that is not part of the ISO-8601 standard.
- Returns:
- the ISO date formatter, never null
-
isoDate
Returns the ISO date formatter that prints/parses a date, with the offset and zone if available, such as '2007-12-03', '2007-12-03+01:00' or '2007-12-03+01:00[Europe/Paris]'.This is the ISO-8601 extended format:
yyyy-MM-dd[ZZ['['{ZoneId}']']]
The year will print 4 digits, unless this is insufficient, in which case the full year will be printed together with a positive/negative sign.
The offset will print and parse an offset with seconds even though that is not part of the ISO-8601 standard.
- Returns:
- the ISO date formatter, never null
-
isoLocalTime
Returns the ISO time formatter that prints/parses a local time, without an offset such as '10:15:30'.This is the ISO-8601 extended format:
HH:mm[:ss[.S]]
The seconds will be printed if present in the Calendrical, thus a LocalTime will always print the seconds. The nanoseconds will be printed if non-zero. If non-zero, the minimum number of fractional second digits will printed.
- Returns:
- the ISO time formatter, never null
-
isoOffsetTime
Returns the ISO time formatter that prints/parses a local time, with an offset such as '10:15:30+01:00'.This is the ISO-8601 extended format:
HH:mm[:ss[.S]]ZZ
The seconds will be printed if present in the Calendrical, thus an OffsetTime will always print the seconds. The nanoseconds will be printed if non-zero. If non-zero, the minimum number of fractional second digits will printed.
The offset will print and parse an offset with seconds even though that is not part of the ISO-8601 standard.
- Returns:
- the ISO time formatter, never null
-
isoTime
Returns the ISO time formatter that prints/parses a time, with the offset and zone if available, such as '10:15:30', '10:15:30+01:00' or '10:15:30+01:00[Europe/Paris]'.This is the ISO-8601 extended format:
HH:mm[:ss[.S]][ZZ['['{ZoneId}']']]
The seconds will be printed if present in the Calendrical, thus a LocalTime will always print the seconds. The nanoseconds will be printed if non-zero. If non-zero, the minimum number of fractional second digits will printed.
The offset will print and parse an offset with seconds even though that is not part of the ISO-8601 standard.
- Returns:
- the ISO date formatter, never null
-
isoLocalDateTime
Returns the ISO date formatter that prints/parses a local date without an offset, such as '2007-12-03T10:15:30'.This is the ISO-8601 extended format:
yyyy-MM-dd'T'HH:mm[:ss[.S]]
The year will print 4 digits, unless this is insufficient, in which case the full year will be printed together with a positive/negative sign.
The seconds will be printed if present in the Calendrical, thus a LocalDateTime will always print the seconds. The nanoseconds will be printed if non-zero. If non-zero, the minimum number of fractional second digits will printed.
- Returns:
- the ISO date formatter, never null
-
isoOffsetDateTime
Returns the ISO date formatter that prints/parses an offset date with an offset, such as '2007-12-03T10:15:30+01:00'.This is the ISO-8601 extended format:
yyyy-MM-dd'T'HH:mm[:ss[.S]]ZZ
The year will print 4 digits, unless this is insufficient, in which case the full year will be printed together with a positive/negative sign.
The seconds will be printed if present in the Calendrical, thus an OffsetDateTime will always print the seconds. The nanoseconds will be printed if non-zero. If non-zero, the minimum number of fractional second digits will printed.
The offset will print and parse an offset with seconds even though that is not part of the ISO-8601 standard.
- Returns:
- the ISO date formatter, never null
-
isoZonedDateTime
Returns the ISO date formatter that prints/parses an offset date with a zone, such as '2007-12-03T10:15:30+01:00[Europe/Paris]'.This is the ISO-8601 extended format:
yyyy-MM-dd'T'HH:mm[:ss[.S]]ZZ[{ZoneId}]
The year will print 4 digits, unless this is insufficient, in which case the full year will be printed together with a positive/negative sign.
The seconds will be printed if present in the Calendrical, thus an OffsetDateTime will always print the seconds. The nanoseconds will be printed if non-zero. If non-zero, the minimum number of fractional second digits will printed.
The offset will print and parse an offset with seconds even though that is not part of the ISO-8601 standard.
- Returns:
- the ISO date formatter, never null
-
isoDateTime
Returns the ISO date formatter that prints/parses a date, with the offset and zone if available, such as '2007-12-03T10:15:30', '2007-12-03T10:15:30+01:00' or '2007-12-03T10:15:30+01:00[Europe/Paris]'.This is the ISO-8601 extended format:
yyyy-MM-dd'T'HH:mm[:ss[.S]][ZZ['['{ZoneId}']']]
The year will print 4 digits, unless this is insufficient, in which case the full year will be printed together with a positive/negative sign.
The seconds will be printed if present in the Calendrical, thus a ZonedDateTime will always print the seconds. The nanoseconds will be printed if non-zero. If non-zero, the minimum number of fractional second digits will printed.
The offset will print and parse an offset with seconds even though that is not part of the ISO-8601 standard.
- Returns:
- the ISO date formatter, never null
-
isoOrdinalDate
Returns the ISO date formatter that prints/parses a date without an offset.This is the ISO-8601 extended format:
yyyy-DDD
The year will print 4 digits, unless this is insufficient, in which case the full year will be printed together with a positive/negative sign.
- Returns:
- the ISO ordinal date formatter, never null
-
isoWeekDate
Returns the ISO date formatter that prints/parses a date without an offset.This is the ISO-8601 extended format:
yyyy-Www-D
The year will print 4 digits, unless this is insufficient, in which case the full year will be printed together with a positive/negative sign.
- Returns:
- the ISO week date formatter, never null
-
basicIsoDate
Returns the ISO date formatter that prints/parses a date without an offset.This is the ISO-8601 extended format:
yyyyMMdd
The year is limited to printing and parsing 4 digits, as the lack of separators makes it impossible to parse more than 4 digits.
- Returns:
- the ISO date formatter, never null
-
rfc1123
Returns the RFC-1123 date-time formatter.This is the RFC-1123 format: EEE, dd MMM yyyy HH:mm:ss Z. This is the updated replacement for RFC-822 which had a two digit year.
The year will print 4 digits, and only the range 0000 to 9999 is supported.
- Returns:
- the ISO date formatter, never null
-
fullDate
Returns a locale specific date format, which is typically of full length.This returns a formatter that will print/parse a full length date format. The exact format pattern used varies by locale, which is determined from the locale on the formatter. That locale is initialized by method. If a new formatter is obtained using
DateTimeFormatter.withLocale(Locale)
then it will typically change the pattern in use to the appropriate full length date format for that new locale.- Parameters:
locale
- the locale to use, not null- Returns:
- the full date formatter, never null
-
longDate
Returns a locale specific date format, which is typically of long length.This returns a formatter that will print/parse a long length date format. The exact format pattern used varies by locale, which is determined from the locale on the formatter. That locale is initialized by method. If a new formatter is obtained using
DateTimeFormatter.withLocale(Locale)
then it will typically change the pattern in use to the appropriate long length date format for that new locale.- Parameters:
locale
- the locale to use, not null- Returns:
- the long date formatter, never null
-
mediumDate
Returns a locale specific date format of medium length.This returns a formatter that will print/parse a medium length date format. The exact format pattern used varies by locale, which is determined from the locale on the formatter. That locale is initialized by method. If a new formatter is obtained using
DateTimeFormatter.withLocale(Locale)
then it will typically change the pattern in use to the appropriate medium length date format for that new locale.- Parameters:
locale
- the locale to use, not null- Returns:
- the medium date formatter, never null
-
shortDate
Returns a locale specific date format of short length.This returns a formatter that will print/parse a short length date format. The exact format pattern used varies by locale, which is determined from the locale on the formatter. That locale is initialized by method. If a new formatter is obtained using
DateTimeFormatter.withLocale(Locale)
then it will typically change the pattern in use to the appropriate short length date format for that new locale.- Parameters:
locale
- the locale to use, not null- Returns:
- the short date formatter, never null
-
date
Returns a locale specific date format.This returns a formatter that will print/parse a date. The exact format pattern used varies by locale, which is determined from the locale on the formatter. That locale is initialized by method. If a new formatter is obtained using
DateTimeFormatter.withLocale(Locale)
then it will typically change the pattern in use to the appropriate date format for that new locale.- Parameters:
dateStyle
- the formatter style to obtain, not nulllocale
- the locale to use, not null- Returns:
- the date formatter, never null
-
fullTime
Returns a locale specific time format, which is typically of full length.This returns a formatter that will print/parse a full length time format. The exact format pattern used varies by locale, which is determined from the locale on the formatter. That locale is initialized by method. If a new formatter is obtained using
DateTimeFormatter.withLocale(Locale)
then it will typically change the pattern in use to the appropriate full length time format for that new locale.- Parameters:
locale
- the locale to use, not null- Returns:
- the full time formatter, never null
-
longTime
Returns a locale specific time format, which is typically of long length.This returns a formatter that will print/parse a long length time format. The exact format pattern used varies by locale, which is determined from the locale on the formatter. That locale is initialized by method. If a new formatter is obtained using
DateTimeFormatter.withLocale(Locale)
then it will typically change the pattern in use to the appropriate long length time format for that new locale.- Parameters:
locale
- the locale to use, not null- Returns:
- the long time formatter, never null
-
mediumTime
Returns a locale specific time format of medium length.This returns a formatter that will print/parse a medium length time format. The exact format pattern used varies by locale, which is determined from the locale on the formatter. That locale is initialized by method. If a new formatter is obtained using
DateTimeFormatter.withLocale(Locale)
then it will typically change the pattern in use to the appropriate medium length time format for that new locale.- Parameters:
locale
- the locale to use, not null- Returns:
- the medium time formatter, never null
-
shortTime
Returns a locale specific time format of short length.This returns a formatter that will print/parse a short length time format. The exact format pattern used varies by locale, which is determined from the locale on the formatter. That locale is initialized by method. If a new formatter is obtained using
DateTimeFormatter.withLocale(Locale)
then it will typically change the pattern in use to the appropriate short length time format for that new locale.- Parameters:
locale
- the locale to use, not null- Returns:
- the short time formatter, never null
-
time
Returns a locale specific time format.This returns a formatter that will print/parse a time. The exact format pattern used varies by locale, which is determined from the locale on the formatter. That locale is initialized by method. If a new formatter is obtained using
DateTimeFormatter.withLocale(Locale)
then it will typically change the pattern in use to the appropriate time format for that new locale.- Parameters:
timeStyle
- the formatter style to obtain, not nulllocale
- the locale to use, not null- Returns:
- the time formatter, never null
-
fullDateTime
Returns a locale specific date-time format, which is typically of full length.This returns a formatter that will print/parse a full length date-time format. The exact format pattern used varies by locale, which is determined from the locale on the formatter. That locale is initialized by method. If a new formatter is obtained using
DateTimeFormatter.withLocale(Locale)
then it will typically change the pattern in use to the appropriate full length date-time format for that new locale.- Parameters:
locale
- the locale to use, not null- Returns:
- the full date-time formatter, never null
-
longDateTime
Returns a locale specific date-time format, which is typically of long length.This returns a formatter that will print/parse a long length date-time format. The exact format pattern used varies by locale, which is determined from the locale on the formatter. That locale is initialized by method. If a new formatter is obtained using
DateTimeFormatter.withLocale(Locale)
then it will typically change the pattern in use to the appropriate long length date-time format for that new locale.- Parameters:
locale
- the locale to use, not null- Returns:
- the long date-time formatter, never null
-
mediumDateTime
Returns a locale specific date-time format of medium length.This returns a formatter that will print/parse a medium length date-time format. The exact format pattern used varies by locale, which is determined from the locale on the formatter. That locale is initialized by method. If a new formatter is obtained using
DateTimeFormatter.withLocale(Locale)
then it will typically change the pattern in use to the appropriate medium length date-time format for that new locale.- Parameters:
locale
- the locale to use, not null- Returns:
- the medium date-time formatter, never null
-
shortDateTime
Returns a locale specific date-time format of short length.This returns a formatter that will print/parse a short length date-time format. The exact format pattern used varies by locale, which is determined from the locale on the formatter. That locale is initialized by method. If a new formatter is obtained using
DateTimeFormatter.withLocale(Locale)
then it will typically change the pattern in use to the appropriate short length date-time format for that new locale.- Parameters:
locale
- the locale to use, not null- Returns:
- the short date-time formatter, never null
-
dateTime
public static DateTimeFormatter dateTime(DateTimeFormatterBuilder.FormatStyle dateTimeStyle, Locale locale) Returns a locale specific date-time format, which is typically of short length.This returns a formatter that will print/parse a date-time. The exact format pattern used varies by locale, which is determined from the locale on the formatter. That locale is initialized by method. If a new formatter is obtained using
DateTimeFormatter.withLocale(Locale)
then it will typically change the pattern in use to the appropriate date-time format for that new locale.- Parameters:
dateTimeStyle
- the formatter style to obtain, not nulllocale
- the locale to use, not null- Returns:
- the date-time formatter, never null
-
dateTime
public static DateTimeFormatter dateTime(DateTimeFormatterBuilder.FormatStyle dateStyle, DateTimeFormatterBuilder.FormatStyle timeStyle, Locale locale) Returns a locale specific date, time or date-time format.This returns a formatter that will print/parse a date, time or date-time. The exact format pattern used varies by locale, which is determined from the locale on the formatter. That locale is initialized by method. If a new formatter is obtained using
DateTimeFormatter.withLocale(Locale)
then it will typically change the pattern in use to the appropriate format for that new locale.- Parameters:
dateStyle
- the date formatter style to obtain, not nulltimeStyle
- the time formatter style to obtain, not nulllocale
- the locale to use, not null- Returns:
- the date, time or date-time formatter, never null
-