public class FastDateFormat extends Format implements DatePrinter, DateParser, Serializable
Modifier and Type | Field and Description |
---|---|
static int |
FULL
FULL locale dependent date or time style.
|
static int |
LONG
LONG locale dependent date or time style.
|
static int |
MEDIUM
MEDIUM locale dependent date or time style.
|
static int |
SHORT
SHORT locale dependent date or time style.
|
Modifier | Constructor and Description |
---|---|
protected |
FastDateFormat(String pattern,
TimeZone timeZone,
Locale locale)
Constructs a new FastDateFormat.
|
protected |
FastDateFormat(String pattern,
TimeZone timeZone,
Locale locale,
Date centuryStart)
Constructs a new FastDateFormat.
|
Modifier and Type | Method and Description |
---|---|
protected StringBuilder |
applyRules(Calendar calendar,
StringBuilder buf)
Performs the formatting by applying the rules to the specified calendar.
|
boolean |
equals(Object obj)
Compares two objects for equality.
|
String |
format(Calendar calendar)
Formats a
Calendar object. |
StringBuilder |
format(Calendar calendar,
StringBuilder buf)
Formats a
Calendar object into the supplied StringBuilder . |
String |
format(Date date)
Formats a
Date object using a GregorianCalendar . |
StringBuilder |
format(Date date,
StringBuilder buf)
Formats a
Date object into the supplied StringBuilder using a GregorianCalendar . |
String |
format(long millis)
Formats a millisecond
long value. |
StringBuilder |
format(long millis,
StringBuilder buf)
Formats a millisecond
long value into the supplied StringBuilder . |
StringBuilder |
format(Object obj,
StringBuilder toAppendTo,
FieldPosition pos)
Formats a
Date , Calendar or Long (milliseconds) object. |
static FastDateFormat |
getDateInstance(int style)
Gets a date formatter instance using the specified style in the default time zone and locale.
|
static FastDateFormat |
getDateInstance(int style,
Locale locale)
Gets a date formatter instance using the specified style and locale in the default time zone.
|
static FastDateFormat |
getDateInstance(int style,
TimeZone timeZone)
Gets a date formatter instance using the specified style and time zone in the default locale.
|
static FastDateFormat |
getDateInstance(int style,
TimeZone timeZone,
Locale locale)
Gets a date formatter instance using the specified style, time zone and locale.
|
static FastDateFormat |
getDateTimeInstance(int dateStyle,
int timeStyle)
Gets a date/time formatter instance using the specified style in the default time zone and locale.
|
static FastDateFormat |
getDateTimeInstance(int dateStyle,
int timeStyle,
Locale locale)
Gets a date/time formatter instance using the specified style and locale in the default time zone.
|
static FastDateFormat |
getDateTimeInstance(int dateStyle,
int timeStyle,
TimeZone timeZone)
Gets a date/time formatter instance using the specified style and time zone in the default locale.
|
static FastDateFormat |
getDateTimeInstance(int dateStyle,
int timeStyle,
TimeZone timeZone,
Locale locale)
Gets a date/time formatter instance using the specified style, time zone and locale.
|
static FastDateFormat |
getInstance()
Gets a formatter instance using the default pattern in the default locale.
|
static FastDateFormat |
getInstance(String pattern)
Gets a formatter instance using the specified pattern in the default locale.
|
static FastDateFormat |
getInstance(String pattern,
Locale locale)
Gets a formatter instance using the specified pattern and locale.
|
static FastDateFormat |
getInstance(String pattern,
TimeZone timeZone)
Gets a formatter instance using the specified pattern and time zone.
|
static FastDateFormat |
getInstance(String pattern,
TimeZone timeZone,
Locale locale)
Gets a formatter instance using the specified pattern, time zone and locale.
|
Locale |
getLocale()
Gets the locale used by this formatter.
|
int |
getMaxLengthEstimate()
Gets an estimate for the maximum string length that the formatter will produce.
|
String |
getPattern()
Gets the pattern used by this formatter.
|
static FastDateFormat |
getTimeInstance(int style)
Gets a time formatter instance using the specified style in the default time zone and locale.
|
static FastDateFormat |
getTimeInstance(int style,
Locale locale)
Gets a time formatter instance using the specified style and locale in the default time zone.
|
static FastDateFormat |
getTimeInstance(int style,
TimeZone timeZone)
Gets a time formatter instance using the specified style and time zone in the default locale.
|
static FastDateFormat |
getTimeInstance(int style,
TimeZone timeZone,
Locale locale)
Gets a time formatter instance using the specified style, time zone and locale.
|
TimeZone |
getTimeZone()
Gets the time zone used by this formatter.
|
int |
hashCode()
Returns a hashcode compatible with equals.
|
Date |
parse(String source)
Equivalent to DateFormat.parse(String).
|
Date |
parse(String source,
ParsePosition pos)
Equivalent to DateFormat.parse(String, ParsePosition).
|
Object |
parseObject(String source,
ParsePosition pos)
Parse a date/time string according to the given parse position.
|
String |
toPattern() |
String |
toString()
Gets a debugging string version of this formatter.
|
format, parseObject
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
parseObject
public static final int FULL
public static final int LONG
public static final int MEDIUM
public static final int SHORT
protected FastDateFormat(String pattern, TimeZone timeZone, Locale locale)
Constructs a new FastDateFormat.
pattern
- SimpleDateFormat
compatible patterntimeZone
- non-null time zone to uselocale
- non-null locale to useNullPointerException
- if pattern, timeZone, or locale is null.protected FastDateFormat(String pattern, TimeZone timeZone, Locale locale, Date centuryStart)
Constructs a new FastDateFormat.
pattern
- SimpleDateFormat
compatible patterntimeZone
- non-null time zone to uselocale
- non-null locale to usecenturyStart
- The start of the 100 year period to use as the "default century" for 2 digit year parsing.
If centuryStart is null, defaults to now - 80 yearsNullPointerException
- if pattern, timeZone, or locale is null.public static FastDateFormat getInstance()
Gets a formatter instance using the default pattern in the default locale.
public static FastDateFormat getInstance(String pattern)
Gets a formatter instance using the specified pattern in the default locale.
pattern
- SimpleDateFormat
compatible patternIllegalArgumentException
- if pattern is invalidpublic static FastDateFormat getInstance(String pattern, TimeZone timeZone)
Gets a formatter instance using the specified pattern and time zone.
pattern
- SimpleDateFormat
compatible patterntimeZone
- optional time zone, overrides time zone of formatted dateIllegalArgumentException
- if pattern is invalidpublic static FastDateFormat getInstance(String pattern, Locale locale)
Gets a formatter instance using the specified pattern and locale.
pattern
- SimpleDateFormat
compatible patternlocale
- optional locale, overrides system localeIllegalArgumentException
- if pattern is invalidpublic static FastDateFormat getInstance(String pattern, TimeZone timeZone, Locale locale)
Gets a formatter instance using the specified pattern, time zone and locale.
pattern
- SimpleDateFormat
compatible patterntimeZone
- optional time zone, overrides time zone of formatted datelocale
- optional locale, overrides system localeIllegalArgumentException
- if pattern is invalid or null
public static FastDateFormat getDateInstance(int style)
Gets a date formatter instance using the specified style in the default time zone and locale.
style
- date style: FULL, LONG, MEDIUM, or SHORTIllegalArgumentException
- if the Locale has no date pattern definedpublic static FastDateFormat getDateInstance(int style, Locale locale)
Gets a date formatter instance using the specified style and locale in the default time zone.
style
- date style: FULL, LONG, MEDIUM, or SHORTlocale
- optional locale, overrides system localeIllegalArgumentException
- if the Locale has no date pattern definedpublic static FastDateFormat getDateInstance(int style, TimeZone timeZone)
Gets a date formatter instance using the specified style and time zone in the default locale.
style
- date style: FULL, LONG, MEDIUM, or SHORTtimeZone
- optional time zone, overrides time zone of formatted dateIllegalArgumentException
- if the Locale has no date pattern definedpublic static FastDateFormat getDateInstance(int style, TimeZone timeZone, Locale locale)
Gets a date formatter instance using the specified style, time zone and locale.
style
- date style: FULL, LONG, MEDIUM, or SHORTtimeZone
- optional time zone, overrides time zone of formatted datelocale
- optional locale, overrides system localeIllegalArgumentException
- if the Locale has no date pattern definedpublic static FastDateFormat getTimeInstance(int style)
Gets a time formatter instance using the specified style in the default time zone and locale.
style
- time style: FULL, LONG, MEDIUM, or SHORTIllegalArgumentException
- if the Locale has no time pattern definedpublic static FastDateFormat getTimeInstance(int style, Locale locale)
Gets a time formatter instance using the specified style and locale in the default time zone.
style
- time style: FULL, LONG, MEDIUM, or SHORTlocale
- optional locale, overrides system localeIllegalArgumentException
- if the Locale has no time pattern definedpublic static FastDateFormat getTimeInstance(int style, TimeZone timeZone)
Gets a time formatter instance using the specified style and time zone in the default locale.
style
- time style: FULL, LONG, MEDIUM, or SHORTtimeZone
- optional time zone, overrides time zone of formatted timeIllegalArgumentException
- if the Locale has no time pattern definedpublic static FastDateFormat getTimeInstance(int style, TimeZone timeZone, Locale locale)
Gets a time formatter instance using the specified style, time zone and locale.
style
- time style: FULL, LONG, MEDIUM, or SHORTtimeZone
- optional time zone, overrides time zone of formatted timelocale
- optional locale, overrides system localeIllegalArgumentException
- if the Locale has no time pattern definedpublic static FastDateFormat getDateTimeInstance(int dateStyle, int timeStyle)
Gets a date/time formatter instance using the specified style in the default time zone and locale.
dateStyle
- date style: FULL, LONG, MEDIUM, or SHORTtimeStyle
- time style: FULL, LONG, MEDIUM, or SHORTIllegalArgumentException
- if the Locale has no date/time pattern definedpublic static FastDateFormat getDateTimeInstance(int dateStyle, int timeStyle, Locale locale)
Gets a date/time formatter instance using the specified style and locale in the default time zone.
dateStyle
- date style: FULL, LONG, MEDIUM, or SHORTtimeStyle
- time style: FULL, LONG, MEDIUM, or SHORTlocale
- optional locale, overrides system localeIllegalArgumentException
- if the Locale has no date/time pattern definedpublic static FastDateFormat getDateTimeInstance(int dateStyle, int timeStyle, TimeZone timeZone)
Gets a date/time formatter instance using the specified style and time zone in the default locale.
dateStyle
- date style: FULL, LONG, MEDIUM, or SHORTtimeStyle
- time style: FULL, LONG, MEDIUM, or SHORTtimeZone
- optional time zone, overrides time zone of formatted dateIllegalArgumentException
- if the Locale has no date/time pattern definedpublic static FastDateFormat getDateTimeInstance(int dateStyle, int timeStyle, TimeZone timeZone, Locale locale)
Gets a date/time formatter instance using the specified style, time zone and locale.
dateStyle
- date style: FULL, LONG, MEDIUM, or SHORTtimeStyle
- time style: FULL, LONG, MEDIUM, or SHORTtimeZone
- optional time zone, overrides time zone of formatted datelocale
- optional locale, overrides system localeIllegalArgumentException
- if the Locale has no date/time pattern definedpublic StringBuilder format(Object obj, StringBuilder toAppendTo, FieldPosition pos)
Formats a Date
, Calendar
or Long
(milliseconds) object.
format
in interface DatePrinter
format
in class Format
obj
- the object to formattoAppendTo
- the buffer to append topos
- the position - ignoredpublic String format(long millis)
Formats a millisecond long
value.
format
in interface DatePrinter
millis
- the millisecond value to formatpublic String format(Date date)
Formats a Date
object using a GregorianCalendar
.
format
in interface DatePrinter
date
- the date to formatpublic String format(Calendar calendar)
Formats a Calendar
object.
format
in interface DatePrinter
calendar
- the calendar to formatpublic StringBuilder format(long millis, StringBuilder buf)
Formats a millisecond long
value into the supplied StringBuilder
.
format
in interface DatePrinter
millis
- the millisecond value to formatbuf
- the buffer to format intopublic StringBuilder format(Date date, StringBuilder buf)
Formats a Date
object into the supplied StringBuilder
using a GregorianCalendar
.
format
in interface DatePrinter
date
- the date to formatbuf
- the buffer to format intopublic StringBuilder format(Calendar calendar, StringBuilder buf)
Formats a Calendar
object into the supplied StringBuilder
.
format
in interface DatePrinter
calendar
- the calendar to formatbuf
- the buffer to format intopublic Date parse(String source) throws ParseException
DateParser
DateFormat.parse(String)
for more information.parse
in interface DateParser
source
- A String
whose beginning should be parsed.Date
parsed from the stringParseException
- if the beginning of the specified string cannot be parsed.public Date parse(String source, ParsePosition pos)
DateParser
DateFormat.parse(String, ParsePosition)
for more information.parse
in interface DateParser
source
- A String
, part of which should be parsed.pos
- A ParsePosition
object with index and error index information as described above.Date
parsed from the string. In case of error, returns null.public Object parseObject(String source, ParsePosition pos)
DateParser
parseObject
in interface DateParser
parseObject
in class Format
source
- A String
whose beginning should be parsed.pos
- the parse positionjava.util.Date
objectDateFormat.parseObject(String, ParsePosition)
public String getPattern()
Gets the pattern used by this formatter.
getPattern
in interface DateParser
getPattern
in interface DatePrinter
SimpleDateFormat
compatiblepublic TimeZone getTimeZone()
Gets the time zone used by this formatter.
This zone is always used for Date
formatting.
getTimeZone
in interface DateParser
getTimeZone
in interface DatePrinter
public Locale getLocale()
Gets the locale used by this formatter.
getLocale
in interface DateParser
getLocale
in interface DatePrinter
public int getMaxLengthEstimate()
Gets an estimate for the maximum string length that the formatter will produce.
The actual formatted length will almost always be less than or equal to this amount.
public String toPattern()
public boolean equals(Object obj)
Compares two objects for equality.
public int hashCode()
Returns a hashcode compatible with equals.
public String toString()
Gets a debugging string version of this formatter.
protected StringBuilder applyRules(Calendar calendar, StringBuilder buf)
Performs the formatting by applying the rules to the specified calendar.
calendar
- the calendar to formatbuf
- the buffer to format intoCopyright © 1999-2017 Apache Software Foundation. All Rights Reserved.
Apache Logging, Apache Log4j, Log4j, Apache, the Apache feather logo, the Apache Logging project logo, and the Apache Log4j logo are trademarks of The Apache Software Foundation.