public class DateUtils
extends java.lang.Object
Modifier and Type | Class and Description |
---|---|
static class |
DateUtils.DateFields |
Modifier and Type | Field and Description |
---|---|
static long |
DAY_IN_MS |
static int |
FORMAT_HUMAN_READABLE_DAYS_FROM_TODAY |
static int |
FORMAT_HUMAN_READABLE_SHORT |
static int |
FORMAT_ISO8601 |
static int |
FORMAT_TIMESTAMP_HTTP
RFC 822
|
static int |
FORMAT_TIMESTAMP_SUFFIX |
private static int |
MONTH_OFFSET |
Constructor and Description |
---|
DateUtils() |
Modifier and Type | Method and Description |
---|---|
static java.util.Date |
dateAdd(java.util.Date d,
int n)
add n days to date d
|
static int |
dateDiff(java.util.Date a,
java.util.Date b)
return the number of days between a and b, positive if b is later than a
|
static int |
daysInMonth(int month,
int year)
Returns the number of days in the month given for
a given year.
|
static int |
daysSinceEpoch(java.util.Date date) |
static double |
decimalTimeOfLocalDay(java.util.Date d)
Returns the fractional time within the local day.
|
static java.lang.String |
format(java.util.Date d,
java.lang.String format) |
static java.lang.String |
format(DateUtils.DateFields f,
java.lang.String format) |
static java.lang.String |
formatDate(java.util.Date d,
int format) |
private static java.lang.String |
formatDate(DateUtils.DateFields f,
int format) |
private static java.lang.String |
formatDateColloquial(DateUtils.DateFields f) |
private static java.lang.String |
formatDateHttp(DateUtils.DateFields f)
RFC 822
|
private static java.lang.String |
formatDateISO8601(DateUtils.DateFields f) |
private static java.lang.String |
formatDateSuffix(DateUtils.DateFields f) |
static java.lang.String |
formatDateTime(java.util.Date d,
int format) |
static java.lang.String |
formatDateToTimeStamp(java.util.Date date) |
private static java.lang.String |
formatDaysFromToday(DateUtils.DateFields f)
Provides text representing a span of time.
|
static java.lang.String |
formatTime(java.util.Date d,
int format) |
private static java.lang.String |
formatTime(DateUtils.DateFields f,
int format) |
private static java.lang.String |
formatTimeColloquial(DateUtils.DateFields f) |
private static java.lang.String |
formatTimeHttp(DateUtils.DateFields f)
RFC 822
|
private static java.lang.String |
formatTimeISO8601(DateUtils.DateFields f) |
private static java.lang.String |
formatTimeSuffix(DateUtils.DateFields f) |
static java.lang.Double |
fractionalDaysSinceEpoch(java.util.Date a) |
static java.lang.String |
get24HourTimeFromDate(java.util.Date d) |
static java.util.Date |
getDate(DateUtils.DateFields f) |
static java.util.Date |
getDate(DateUtils.DateFields f,
java.lang.String timezone) |
static java.util.Date |
getDate(int year,
int month,
int day) |
static java.util.Date |
getDateFromString(java.lang.String value) |
static java.util.Date |
getDateTimeFromString(java.lang.String value) |
static DateUtils.DateFields |
getFields(java.util.Date d) |
static DateUtils.DateFields |
getFields(java.util.Date d,
java.lang.String timezone) |
static int |
getMonthsDifference(java.util.Date earlierDate,
java.util.Date laterDate)
Gets the number of months separating the two dates.
|
static java.util.Date |
getPastPeriodDate(java.util.Date ref,
java.lang.String type,
java.lang.String start,
boolean beginning,
boolean includeToday,
int nAgo)
Creates a Date object representing the amount of time between the
reference date, and the given parameters.
|
static java.lang.String |
getShortStringValue(java.util.Date val) |
static java.lang.String |
getXMLStringValue(java.util.Date val) |
private static boolean |
inRange(int x,
int min,
int max) |
static java.lang.String |
intPad(int n,
int pad)
Converts an integer to a string, ensuring that the string
contains a certain number of digits
|
static boolean |
isLeap(int year)
Determines whether a year is a leap year in the
proleptic Gregorian calendar.
|
static java.util.Date |
parseDate(java.lang.String str) |
private static boolean |
parseDate(java.lang.String dateStr,
DateUtils.DateFields f) |
static java.util.Date |
parseDateTime(java.lang.String str) |
private static boolean |
parseRawTime(java.lang.String timeStr,
DateUtils.DateFields f)
Parse the raw components of time (hh:mm:ss) with no timezone information
|
static java.util.Date |
parseTime(java.lang.String str) |
private static boolean |
parseTime(java.lang.String timeStr,
DateUtils.DateFields f) |
static java.util.Date |
roundDate(java.util.Date d) |
static java.util.List<java.lang.String> |
split(java.lang.String str,
java.lang.String delimiter,
boolean combineMultipleDelimiters)
Tokenizes a string based on the given delimiter string
|
static boolean |
stringContains(java.lang.String string,
java.lang.String substring) |
static java.util.Date |
today() |
private static final int MONTH_OFFSET
public static final int FORMAT_ISO8601
public static final int FORMAT_HUMAN_READABLE_SHORT
public static final int FORMAT_HUMAN_READABLE_DAYS_FROM_TODAY
public static final int FORMAT_TIMESTAMP_SUFFIX
public static final int FORMAT_TIMESTAMP_HTTP
public static final long DAY_IN_MS
public static DateUtils.DateFields getFields(java.util.Date d)
public static DateUtils.DateFields getFields(java.util.Date d, java.lang.String timezone)
public static java.util.Date getDate(DateUtils.DateFields f)
public static java.util.Date getDate(DateUtils.DateFields f, java.lang.String timezone)
public static java.lang.String formatDateTime(java.util.Date d, int format)
public static java.lang.String formatDate(java.util.Date d, int format)
public static java.lang.String formatTime(java.util.Date d, int format)
private static java.lang.String formatDate(DateUtils.DateFields f, int format)
private static java.lang.String formatTime(DateUtils.DateFields f, int format)
private static java.lang.String formatDateHttp(DateUtils.DateFields f)
private static java.lang.String formatTimeHttp(DateUtils.DateFields f)
private static java.lang.String formatDateISO8601(DateUtils.DateFields f)
private static java.lang.String formatDateColloquial(DateUtils.DateFields f)
private static java.lang.String formatDateSuffix(DateUtils.DateFields f)
private static java.lang.String formatTimeISO8601(DateUtils.DateFields f)
private static java.lang.String formatTimeColloquial(DateUtils.DateFields f)
private static java.lang.String formatTimeSuffix(DateUtils.DateFields f)
public static java.lang.String format(java.util.Date d, java.lang.String format)
public static java.lang.String format(DateUtils.DateFields f, java.lang.String format)
public static java.util.Date parseDateTime(java.lang.String str)
public static java.util.Date parseDate(java.lang.String str)
public static java.util.Date parseTime(java.lang.String str)
private static boolean parseDate(java.lang.String dateStr, DateUtils.DateFields f)
private static boolean parseTime(java.lang.String timeStr, DateUtils.DateFields f)
private static boolean parseRawTime(java.lang.String timeStr, DateUtils.DateFields f)
timeStr
- f
- public static java.util.Date getDate(int year, int month, int day)
public static java.util.Date roundDate(java.util.Date d)
public static java.util.Date today()
public static double decimalTimeOfLocalDay(java.util.Date d)
d
- public static int daysInMonth(int month, int year)
month
- The month to be testedyear
- The year in which the month is to be testedpublic static boolean isLeap(int year)
year
- The year to be testedprivate static java.lang.String formatDaysFromToday(DateUtils.DateFields f)
f
- The fields for the date to be compared against the current date.public static java.util.Date getPastPeriodDate(java.util.Date ref, java.lang.String type, java.lang.String start, boolean beginning, boolean includeToday, int nAgo)
ref
- The starting reference datetype
- "week", or "month", representing the time period which is to be returned.start
- "sun", "mon", ... etc. representing the start of the time period.beginning
- true=return first day of period, false=return last day of periodincludeToday
- Whether to include the current date in the returned calculationnAgo
- How many periods ago. 1=most recent period, 0=period in progresspublic static int getMonthsDifference(java.util.Date earlierDate, java.util.Date laterDate)
earlierDate
- The earlier date, chronologicallylaterDate
- The later date, chronologicallypublic static int daysSinceEpoch(java.util.Date date)
date
- the date object to be analyzedpublic static java.lang.Double fractionalDaysSinceEpoch(java.util.Date a)
public static java.util.Date dateAdd(java.util.Date d, int n)
d
- n
- public static int dateDiff(java.util.Date a, java.util.Date b)
a
- b
- public static java.util.List<java.lang.String> split(java.lang.String str, java.lang.String delimiter, boolean combineMultipleDelimiters)
str
- The string to be splitdelimiter
- The delimeter to be usedpublic static java.lang.String intPad(int n, int pad)
n
- The integer to be convertedpad
- The length of the string to be returnedprivate static boolean inRange(int x, int min, int max)
public static java.lang.String formatDateToTimeStamp(java.util.Date date)
public static java.lang.String getShortStringValue(java.util.Date val)
public static java.lang.String getXMLStringValue(java.util.Date val)
public static java.lang.String get24HourTimeFromDate(java.util.Date d)
public static java.util.Date getDateFromString(java.lang.String value)
public static java.util.Date getDateTimeFromString(java.lang.String value)
public static boolean stringContains(java.lang.String string, java.lang.String substring)