public class Dates
extends java.lang.Object
Modifier and Type | Class and Description |
---|---|
static class |
Dates.DateDistance |
Constructor and Description |
---|
Dates() |
Modifier and Type | Method and Description |
---|---|
static Dates.DateDistance |
addDateDistances(Dates.DateDistance dis1,
Dates.DateDistance dis2) |
static void |
addDays(java.util.Date date,
int days)
Add the days to the date.
|
static java.util.Date |
cloneWith2359(java.util.Date date)
Returns a clone but with 23:59:59:999 for hours, minutes, seconds and milliseconds.
|
static java.util.Date |
cloneWithoutTime(java.util.Date date)
Returns a clone but without hours, minutes, seconds and milliseconds.
|
static java.util.Date |
create(int day,
int month,
int year)
With hour to 0.
|
static java.util.Date |
create(int day,
int month,
int year,
int hourofday,
int minute,
int second)
If day, month and year are 0 return null.
|
static java.util.Date |
createCurrent()
Current date without time.
|
static Dates.DateDistance |
dateDistance(java.util.Date f1,
java.util.Date f2)
Difference of 2 dates in years, months and days.
|
static Dates.DateDistance |
dateDistance(java.util.Date f1,
java.util.Date f2,
boolean includeStartDate)
Difference of 2 dates in years, months and days.
|
static java.lang.String |
dateFormatForJSCalendar() |
static java.lang.String |
dateFormatForJSCalendar(boolean includeTime) |
static java.lang.String |
dateTimeFormatForJSCalendar() |
static int |
daysInterval(java.util.Date startDate,
java.util.Date endDate,
boolean includeStartDate)
Returns number of days between startDate and endDate
|
static java.util.Date |
firstOfMonth(java.util.Date date)
The date of the first day of month.
|
static java.text.DateFormat |
getDateTimeFormat()
DateFormat for date + time consistently among all Java versions, according current locale.
|
static java.text.DateFormat |
getDateTimeFormat(java.util.Locale locale)
DateFormat for date + time consistently among all Java versions.
|
static java.text.DateFormat |
getDateTimeFormatForParsing(java.util.Locale locale)
DateFormat for date + time consistently among all Java versions for using in parsing.
|
static int |
getDay(java.util.Date date)
Returns the day of date.
|
static java.lang.String |
getLocalizedDatePattern(java.util.Locale locale)
Date partern for short format to be use for both Date and LocalDate.
|
static int |
getMonth(java.util.Date date)
Returns the month (1 to 12) of date.
|
static int |
getYear(java.util.Date date)
Returns the year (4 digits) of date.
|
static boolean |
hasTime(java.util.Date date)
If the hours, minutes, seconds and milliseconds are zero.
|
static boolean |
isDifferentDay(java.util.Date f1,
java.util.Date f2)
Compares if 2 dates are equals at day, month and year
level, ignoring time in comparing.
|
static java.util.Date |
lastOfMonth(java.util.Date date)
The date of the last day of month.
|
static java.util.Date |
lastOfYear(java.util.Date date)
The date of the last day of year.
|
static java.util.Date |
removeTime(java.util.Date date)
Puts hours, minutes, seconds and milliseconds to zero.
|
static void |
setDay(java.util.Date date,
int day)
Put the day to the date.
|
static void |
setMonth(java.util.Date date,
int month)
Put the month (1 to 12) to the date.
|
static void |
setYear(java.util.Date date,
int year)
Put the year to the date.
|
static Dates.DateDistance |
subtractDateDistances(Dates.DateDistance dis1,
Dates.DateDistance dis2) |
static java.sql.Date |
toSQL(java.util.Date date)
Creates a java.sql.Date from a java.util.Date.
|
static java.lang.String |
toString(java.util.Date date)
String with date in short format according current locale.
|
static java.util.Date |
withTime(java.util.Date date)
Creates a date with day, month and year of original,
but with current time.
|
public static java.util.Date create(int day, int month, int year)
The time zone is the default one, so if you print this date in the same JVM you will get the correct one. However, if you move the date object from one machine to other, or save it in a database that will be read from another locale maybe the dates will not match.
public static java.util.Date create(int day, int month, int year, int hourofday, int minute, int second)
The time zone is the default one, so if you print this date in the same JVM you will get the correct one. However, if you move the date object from one machine to other, or save it in a database that will be read from another locale maybe the dates will not match.
public static java.util.Date createCurrent()
public static int getDay(java.util.Date date)
If date is null return 0.
public static int getYear(java.util.Date date)
public static int getMonth(java.util.Date date)
If date is null returns 0.
public static void setDay(java.util.Date date, int day)
If date is null it has no effect (but no exception is thrown)
public static void setMonth(java.util.Date date, int month)
If date is null it has no effect (but no exception is thrown)
public static void setYear(java.util.Date date, int year)
If date is null it has no effect (but no exception is thrown)
public static java.util.Date removeTime(java.util.Date date)
public static boolean hasTime(java.util.Date date)
public static java.util.Date cloneWithoutTime(java.util.Date date)
public static java.util.Date cloneWith2359(java.util.Date date)
public static java.sql.Date toSQL(java.util.Date date)
date
- If null returns nullpublic static java.lang.String toString(java.util.Date date)
Current locale is from Locales.getCurrent()
.
date
- If null returns empty stringpublic static java.text.DateFormat getDateTimeFormat()
The date format is consistent among all Java versions, including Java 6, 7, 8, 9, 10 and 11.
While standard Java format differently since Java 9.
Current locale is from Locales.getCurrent()
.
public static java.text.DateFormat getDateTimeFormat(java.util.Locale locale)
The date format is consistent among all Java versions, including Java 6, 7, 8, 9, 10 and 11. While standard Java format differently since Java 9. Also uses always 4 digits for year no matter the locale (new in v6.5.2).
public static java.text.DateFormat getDateTimeFormatForParsing(java.util.Locale locale)
The date format is consistent among all Java versions, including Java 6, 7, 8, 9, 10 and 11. While standard Java format differently since Java 9. It uses 2 or 4 digits for year depending on locale.
public static java.lang.String getLocalizedDatePattern(java.util.Locale locale)
It uses always 4 digits for year.
public static java.util.Date withTime(java.util.Date date)
date
- It is not changedpublic static boolean isDifferentDay(java.util.Date f1, java.util.Date f2)
f1
- Can be nullf2
- Can be nullpublic static Dates.DateDistance dateDistance(java.util.Date f1, java.util.Date f2, boolean includeStartDate)
f1
- If null returns nullf2
- If null returns nullpublic static Dates.DateDistance dateDistance(java.util.Date f1, java.util.Date f2)
f1
- If null returns nullf2
- If null returns nullpublic static Dates.DateDistance addDateDistances(Dates.DateDistance dis1, Dates.DateDistance dis2)
public static Dates.DateDistance subtractDateDistances(Dates.DateDistance dis1, Dates.DateDistance dis2)
public static java.lang.String dateFormatForJSCalendar(boolean includeTime)
locale
- Removed in 6.5public static java.lang.String dateFormatForJSCalendar()
locale
- Removed in 6.5public static java.lang.String dateTimeFormatForJSCalendar()
locale
- Removed in 6.5public static int daysInterval(java.util.Date startDate, java.util.Date endDate, boolean includeStartDate)
java.util.Date
- startDatejava.util.Date
- endDateboolean
- includeStartDatepublic static void addDays(java.util.Date date, int days)
If date is null it has no effect (but no exception is thrown)
public static java.util.Date lastOfYear(java.util.Date date)
The
- root date, it is not modified.public static java.util.Date lastOfMonth(java.util.Date date)
The
- root date, it is not modified.public static java.util.Date firstOfMonth(java.util.Date date)
The
- root date, it is not modified.