|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object org.joda.time.format.ISODateTimeFormat
public class ISODateTimeFormat
Factory that creates instances of DateTimeFormatter for the ISO8601 standard.
Datetime formatting is performed by the DateTimeFormatter
class.
Three classes provide factory methods to create formatters, and this is one.
The others are DateTimeFormat
and DateTimeFormatterBuilder
.
ISO8601 is the international standard for data interchange. It defines a
framework, rather than an absolute standard. As a result this provider has a
number of methods that represent common uses of the framework. The most common
formats are date
, time
, and dateTime
.
For example, to format a date time in ISO format:
DateTime dt = new DateTime(); DateTimeFormatter fmt = ISODateTimeFormat.dateTime(); String str = fmt.print(dt);
It is important to understand that these formatters are not linked to
the ISOChronology
. These formatters may be used with any
chronology, however there may be certain side effects with more unusual
chronologies. For example, the ISO formatters rely on dayOfWeek being
single digit, dayOfMonth being two digit and dayOfYear being three digit.
A chronology with a ten day week would thus cause issues. However, in
general, it is safe to use these formatters with other chronologies.
ISODateTimeFormat is thread-safe and immutable, and the formatters it returns are as well.
DateTimeFormat
,
DateTimeFormatterBuilder
Constructor Summary | |
---|---|
protected |
ISODateTimeFormat()
Constructor. |
Method Summary | |
---|---|
static DateTimeFormatter |
basicDate()
Returns a basic formatter for a full date as four digit year, two digit month of year, and two digit day of month (yyyyMMdd). |
static DateTimeFormatter |
basicDateTime()
Returns a basic formatter that combines a basic date and time, separated by a 'T' (yyyyMMdd'T'HHmmss.SSSZ). |
static DateTimeFormatter |
basicDateTimeNoMillis()
Returns a basic formatter that combines a basic date and time without millis, separated by a 'T' (yyyyMMdd'T'HHmmssZ). |
static DateTimeFormatter |
basicOrdinalDate()
Returns a formatter for a full ordinal date, using a four digit year and three digit dayOfYear (yyyyDDD). |
static DateTimeFormatter |
basicOrdinalDateTime()
Returns a formatter for a full ordinal date and time, using a four digit year and three digit dayOfYear (yyyyDDD'T'HHmmss.SSSZ). |
static DateTimeFormatter |
basicOrdinalDateTimeNoMillis()
Returns a formatter for a full ordinal date and time without millis, using a four digit year and three digit dayOfYear (yyyyDDD'T'HHmmssZ). |
static DateTimeFormatter |
basicTime()
Returns a basic formatter for a two digit hour of day, two digit minute of hour, two digit second of minute, three digit millis, and time zone offset (HHmmss.SSSZ). |
static DateTimeFormatter |
basicTimeNoMillis()
Returns a basic formatter for a two digit hour of day, two digit minute of hour, two digit second of minute, and time zone offset (HHmmssZ). |
static DateTimeFormatter |
basicTTime()
Returns a basic formatter for a two digit hour of day, two digit minute of hour, two digit second of minute, three digit millis, and time zone offset prefixed by 'T' ('T'HHmmss.SSSZ). |
static DateTimeFormatter |
basicTTimeNoMillis()
Returns a basic formatter for a two digit hour of day, two digit minute of hour, two digit second of minute, and time zone offset prefixed by 'T' ('T'HHmmssZ). |
static DateTimeFormatter |
basicWeekDate()
Returns a basic formatter for a full date as four digit weekyear, two digit week of weekyear, and one digit day of week (xxxx'W'wwe). |
static DateTimeFormatter |
basicWeekDateTime()
Returns a basic formatter that combines a basic weekyear date and time, separated by a 'T' (xxxx'W'wwe'T'HHmmss.SSSZ). |
static DateTimeFormatter |
basicWeekDateTimeNoMillis()
Returns a basic formatter that combines a basic weekyear date and time without millis, separated by a 'T' (xxxx'W'wwe'T'HHmmssZ). |
static DateTimeFormatter |
date()
Returns a formatter for a full date as four digit year, two digit month of year, and two digit day of month (yyyy-MM-dd). |
static DateTimeFormatter |
dateElementParser()
Returns a generic ISO date parser for parsing dates. |
static DateTimeFormatter |
dateHour()
Returns a formatter that combines a full date and two digit hour of day. |
static DateTimeFormatter |
dateHourMinute()
Returns a formatter that combines a full date, two digit hour of day, and two digit minute of hour. |
static DateTimeFormatter |
dateHourMinuteSecond()
Returns a formatter that combines a full date, two digit hour of day, two digit minute of hour, and two digit second of minute. |
static DateTimeFormatter |
dateHourMinuteSecondFraction()
Returns a formatter that combines a full date, two digit hour of day, two digit minute of hour, two digit second of minute, and three digit fraction of second (yyyy-MM-dd'T'HH:mm:ss.SSS). |
static DateTimeFormatter |
dateHourMinuteSecondMillis()
Returns a formatter that combines a full date, two digit hour of day, two digit minute of hour, two digit second of minute, and three digit fraction of second (yyyy-MM-dd'T'HH:mm:ss.SSS). |
static DateTimeFormatter |
dateOptionalTimeParser()
Returns a generic ISO datetime parser where the date is mandatory and the time is optional. |
static DateTimeFormatter |
dateParser()
Returns a generic ISO date parser for parsing dates with a possible zone. |
static DateTimeFormatter |
dateTime()
Returns a formatter that combines a full date and time, separated by a 'T' (yyyy-MM-dd'T'HH:mm:ss.SSSZZ). |
static DateTimeFormatter |
dateTimeNoMillis()
Returns a formatter that combines a full date and time without millis, separated by a 'T' (yyyy-MM-dd'T'HH:mm:ssZZ). |
static DateTimeFormatter |
dateTimeParser()
Returns a generic ISO datetime parser which parses either a date or a time or both. |
static DateTimeFormatter |
forFields(Collection<DateTimeFieldType> fields,
boolean extended,
boolean strictISO)
Returns a formatter that outputs only those fields specified. |
static DateTimeFormatter |
hour()
Returns a formatter for a two digit hour of day. |
static DateTimeFormatter |
hourMinute()
Returns a formatter for a two digit hour of day and two digit minute of hour. |
static DateTimeFormatter |
hourMinuteSecond()
Returns a formatter for a two digit hour of day, two digit minute of hour, and two digit second of minute. |
static DateTimeFormatter |
hourMinuteSecondFraction()
Returns a formatter for a two digit hour of day, two digit minute of hour, two digit second of minute, and three digit fraction of second (HH:mm:ss.SSS). |
static DateTimeFormatter |
hourMinuteSecondMillis()
Returns a formatter for a two digit hour of day, two digit minute of hour, two digit second of minute, and three digit fraction of second (HH:mm:ss.SSS). |
static DateTimeFormatter |
localDateOptionalTimeParser()
Returns a generic ISO datetime parser where the date is mandatory and the time is optional. |
static DateTimeFormatter |
localDateParser()
Returns a generic ISO date parser for parsing local dates. |
static DateTimeFormatter |
localTimeParser()
Returns a generic ISO time parser for parsing local times. |
static DateTimeFormatter |
ordinalDate()
Returns a formatter for a full ordinal date, using a four digit year and three digit dayOfYear (yyyy-DDD). |
static DateTimeFormatter |
ordinalDateTime()
Returns a formatter for a full ordinal date and time, using a four digit year and three digit dayOfYear (yyyy-DDD'T'HH:mm:ss.SSSZZ). |
static DateTimeFormatter |
ordinalDateTimeNoMillis()
Returns a formatter for a full ordinal date and time without millis, using a four digit year and three digit dayOfYear (yyyy-DDD'T'HH:mm:ssZZ). |
static DateTimeFormatter |
time()
Returns a formatter for a two digit hour of day, two digit minute of hour, two digit second of minute, three digit fraction of second, and time zone offset (HH:mm:ss.SSSZZ). |
static DateTimeFormatter |
timeElementParser()
Returns a generic ISO time parser. |
static DateTimeFormatter |
timeNoMillis()
Returns a formatter for a two digit hour of day, two digit minute of hour, two digit second of minute, and time zone offset (HH:mm:ssZZ). |
static DateTimeFormatter |
timeParser()
Returns a generic ISO time parser for parsing times with a possible zone. |
static DateTimeFormatter |
tTime()
Returns a formatter for a two digit hour of day, two digit minute of hour, two digit second of minute, three digit fraction of second, and time zone offset prefixed by 'T' ('T'HH:mm:ss.SSSZZ). |
static DateTimeFormatter |
tTimeNoMillis()
Returns a formatter for a two digit hour of day, two digit minute of hour, two digit second of minute, and time zone offset prefixed by 'T' ('T'HH:mm:ssZZ). |
static DateTimeFormatter |
weekDate()
Returns a formatter for a full date as four digit weekyear, two digit week of weekyear, and one digit day of week (xxxx-'W'ww-e). |
static DateTimeFormatter |
weekDateTime()
Returns a formatter that combines a full weekyear date and time, separated by a 'T' (xxxx-'W'ww-e'T'HH:mm:ss.SSSZZ). |
static DateTimeFormatter |
weekDateTimeNoMillis()
Returns a formatter that combines a full weekyear date and time without millis, separated by a 'T' (xxxx-'W'ww-e'T'HH:mm:ssZZ). |
static DateTimeFormatter |
weekyear()
Returns a formatter for a four digit weekyear. |
static DateTimeFormatter |
weekyearWeek()
Returns a formatter for a four digit weekyear and two digit week of weekyear. |
static DateTimeFormatter |
weekyearWeekDay()
Returns a formatter for a four digit weekyear, two digit week of weekyear, and one digit day of week. |
static DateTimeFormatter |
year()
Returns a formatter for a four digit year. |
static DateTimeFormatter |
yearMonth()
Returns a formatter for a four digit year and two digit month of year. |
static DateTimeFormatter |
yearMonthDay()
Returns a formatter for a four digit year, two digit month of year, and two digit day of month. |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Constructor Detail |
---|
protected ISODateTimeFormat()
Method Detail |
---|
public static DateTimeFormatter forFields(Collection<DateTimeFieldType> fields, boolean extended, boolean strictISO)
This method examines the fields provided and returns an ISO-style formatter that best fits. This can be useful for outputting less-common ISO styles, such as YearMonth (YYYY-MM) or MonthDay (--MM-DD).
The list provided may have overlapping fields, such as dayOfWeek and dayOfMonth. In this case, the style is chosen based on the following list, thus in the example, the calendar style is chosen as dayOfMonth is higher in priority than dayOfWeek:
Extended Basic Fields 2005-03-25 20050325 year/monthOfYear/dayOfMonth 2005-03 2005-03 year/monthOfYear 2005--25 2005--25 year/dayOfMonth * 2005 2005 year --03-25 --0325 monthOfYear/dayOfMonth --03 --03 monthOfYear ---03 ---03 dayOfMonth 2005-084 2005084 year/dayOfYear -084 -084 dayOfYear 2005-W12-5 2005W125 weekyear/weekOfWeekyear/dayOfWeek 2005-W-5 2005W-5 weekyear/dayOfWeek * 2005-W12 2005W12 weekyear/weekOfWeekyear -W12-5 -W125 weekOfWeekyear/dayOfWeek -W12 -W12 weekOfWeekyear -W-5 -W-5 dayOfWeek 10:20:30.040 102030.040 hour/minute/second/milli 10:20:30 102030 hour/minute/second 10:20 1020 hour/minute 10 10 hour -20:30.040 -2030.040 minute/second/milli -20:30 -2030 minute/second -20 -20 minute --30.040 --30.040 second/milli --30 --30 second ---.040 ---.040 milli * 10-30.040 10-30.040 hour/second/milli * 10:20-.040 1020-.040 hour/minute/milli * 10-30 10-30 hour/second * 10--.040 10--.040 hour/milli * -20-.040 -20-.040 minute/milli * plus datetime formats like {date}T{time}* indiates that this is not an official ISO format and can be excluded by passing in
strictISO
as true
.
This method can side effect the input collection of fields. If the input collection is modifiable, then each field that was added to the formatter will be removed from the collection, including any duplicates. If the input collection is unmodifiable then no side effect occurs.
This side effect processing is useful if you need to know whether all the fields were converted into the formatter or not. To achieve this, pass in a modifiable list, and check that it is empty on exit.
fields
- the fields to get a formatter for, not null,
updated by the method call unless unmodifiable,
removing those fields built in the formatterextended
- true to use the extended format (with separators)strictISO
- true to stick exactly to ISO8601, false to include additional formats
IllegalArgumentException
- if there is no format for the fieldspublic static DateTimeFormatter dateParser()
It accepts formats described by the following syntax:
date = date-element ['T' offset] date-element = std-date-element | ord-date-element | week-date-element std-date-element = yyyy ['-' MM ['-' dd]] ord-date-element = yyyy ['-' DDD] week-date-element = xxxx '-W' ww ['-' e] offset = 'Z' | (('+' | '-') HH [':' mm [':' ss [('.' | ',') SSS]]])
public static DateTimeFormatter localDateParser()
It accepts formats described by the following syntax:
date-element = std-date-element | ord-date-element | week-date-element std-date-element = yyyy ['-' MM ['-' dd]] ord-date-element = yyyy ['-' DDD] week-date-element = xxxx '-W' ww ['-' e]
public static DateTimeFormatter dateElementParser()
It accepts formats described by the following syntax:
date-element = std-date-element | ord-date-element | week-date-element std-date-element = yyyy ['-' MM ['-' dd]] ord-date-element = yyyy ['-' DDD] week-date-element = xxxx '-W' ww ['-' e]
public static DateTimeFormatter timeParser()
24:00
cannot be parsed.
It accepts formats described by the following syntax:
time = ['T'] time-element [offset] time-element = HH [minute-element] | [fraction] minute-element = ':' mm [second-element] | [fraction] second-element = ':' ss [fraction] fraction = ('.' | ',') digit+ offset = 'Z' | (('+' | '-') HH [':' mm [':' ss [('.' | ',') SSS]]])
public static DateTimeFormatter localTimeParser()
24:00
cannot be parsed.
It accepts formats described by the following syntax:
time = ['T'] time-element time-element = HH [minute-element] | [fraction] minute-element = ':' mm [second-element] | [fraction] second-element = ':' ss [fraction] fraction = ('.' | ',') digit+
public static DateTimeFormatter timeElementParser()
24:00
cannot be parsed.
It accepts formats described by the following syntax:
time-element = HH [minute-element] | [fraction] minute-element = ':' mm [second-element] | [fraction] second-element = ':' ss [fraction] fraction = ('.' | ',') digit+
public static DateTimeFormatter dateTimeParser()
24:00
cannot be parsed.
It accepts formats described by the following syntax:
datetime = time | date-opt-time time = 'T' time-element [offset] date-opt-time = date-element ['T' [time-element] [offset]] date-element = std-date-element | ord-date-element | week-date-element std-date-element = yyyy ['-' MM ['-' dd]] ord-date-element = yyyy ['-' DDD] week-date-element = xxxx '-W' ww ['-' e] time-element = HH [minute-element] | [fraction] minute-element = ':' mm [second-element] | [fraction] second-element = ':' ss [fraction] fraction = ('.' | ',') digit+ offset = 'Z' | (('+' | '-') HH [':' mm [':' ss [('.' | ',') SSS]]])
public static DateTimeFormatter dateOptionalTimeParser()
24:00
cannot be parsed.
It accepts formats described by the following syntax:
date-opt-time = date-element ['T' [time-element] [offset]] date-element = std-date-element | ord-date-element | week-date-element std-date-element = yyyy ['-' MM ['-' dd]] ord-date-element = yyyy ['-' DDD] week-date-element = xxxx '-W' ww ['-' e] time-element = HH [minute-element] | [fraction] minute-element = ':' mm [second-element] | [fraction] second-element = ':' ss [fraction] fraction = ('.' | ',') digit+
public static DateTimeFormatter localDateOptionalTimeParser()
24:00
cannot be parsed.
It accepts formats described by the following syntax:
datetime = date-element ['T' time-element] date-element = std-date-element | ord-date-element | week-date-element std-date-element = yyyy ['-' MM ['-' dd]] ord-date-element = yyyy ['-' DDD] week-date-element = xxxx '-W' ww ['-' e] time-element = HH [minute-element] | [fraction] minute-element = ':' mm [second-element] | [fraction] second-element = ':' ss [fraction] fraction = ('.' | ',') digit+
public static DateTimeFormatter date()
public static DateTimeFormatter time()
24:00
cannot be parsed.
public static DateTimeFormatter timeNoMillis()
24:00
cannot be parsed.
public static DateTimeFormatter tTime()
24:00
cannot be parsed.
public static DateTimeFormatter tTimeNoMillis()
24:00
cannot be parsed.
public static DateTimeFormatter dateTime()
24:00
cannot be parsed.
public static DateTimeFormatter dateTimeNoMillis()
24:00
cannot be parsed.
public static DateTimeFormatter ordinalDate()
public static DateTimeFormatter ordinalDateTime()
24:00
cannot be parsed.
public static DateTimeFormatter ordinalDateTimeNoMillis()
24:00
cannot be parsed.
public static DateTimeFormatter weekDate()
public static DateTimeFormatter weekDateTime()
24:00
cannot be parsed.
public static DateTimeFormatter weekDateTimeNoMillis()
24:00
cannot be parsed.
public static DateTimeFormatter basicDate()
public static DateTimeFormatter basicTime()
24:00
cannot be parsed.
public static DateTimeFormatter basicTimeNoMillis()
24:00
cannot be parsed.
public static DateTimeFormatter basicTTime()
24:00
cannot be parsed.
public static DateTimeFormatter basicTTimeNoMillis()
24:00
cannot be parsed.
public static DateTimeFormatter basicDateTime()
24:00
cannot be parsed.
public static DateTimeFormatter basicDateTimeNoMillis()
24:00
cannot be parsed.
public static DateTimeFormatter basicOrdinalDate()
public static DateTimeFormatter basicOrdinalDateTime()
24:00
cannot be parsed.
public static DateTimeFormatter basicOrdinalDateTimeNoMillis()
24:00
cannot be parsed.
public static DateTimeFormatter basicWeekDate()
public static DateTimeFormatter basicWeekDateTime()
24:00
cannot be parsed.
public static DateTimeFormatter basicWeekDateTimeNoMillis()
24:00
cannot be parsed.
public static DateTimeFormatter year()
public static DateTimeFormatter yearMonth()
public static DateTimeFormatter yearMonthDay()
public static DateTimeFormatter weekyear()
public static DateTimeFormatter weekyearWeek()
public static DateTimeFormatter weekyearWeekDay()
public static DateTimeFormatter hour()
public static DateTimeFormatter hourMinute()
public static DateTimeFormatter hourMinuteSecond()
public static DateTimeFormatter hourMinuteSecondMillis()
public static DateTimeFormatter hourMinuteSecondFraction()
public static DateTimeFormatter dateHour()
public static DateTimeFormatter dateHourMinute()
public static DateTimeFormatter dateHourMinuteSecond()
public static DateTimeFormatter dateHourMinuteSecondMillis()
public static DateTimeFormatter dateHourMinuteSecondFraction()
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |