public class DateUtils extends Object
| Modifier and Type | Field and Description |
|---|---|
static int |
MAX_YEAR
支持的最大年份
|
static int |
MIN_YEAR
支持的最小年份
|
| Constructor and Description |
|---|
DateUtils()
默认构造
|
DateUtils(Calendar calendar)
通过公历构造
|
DateUtils(int lyear,
int lmonth,
int ldate,
boolean isleapMonth)
通过农历年、月、日构造
|
| Modifier and Type | Method and Description |
|---|---|
void |
add(int field,
int amount)
日期增加,和
GregorianCalendar.add类似 |
static Date |
addDays(Date date,
int amount)
原有时间基础上,加上/减去(负数)N天
|
static Date |
addHours(Date date,
int amount)
原有时间基础上,加上/减去(负数)N小时
|
static Date |
addMilliseconds(Date date,
int amount)
原有时间基础上,加上/减去(负数)N毫秒
|
static Date |
addMinutes(Date date,
int amount)
原有时间基础上,加上/减去(负数)N分钟
|
static Date |
addMonths(Date date,
int amount)
原有时间基础上,加上/减去(负数)N月
|
static Date |
addSeconds(Date date,
int amount)
原有时间基础上,加上/减去(负数)N秒
|
static Date |
addWeeks(Date date,
int amount)
原有时间基础上,加上/减去(负数)N周
|
static Date |
addYears(Date date,
int amount)
原有时间基础上,加上/减去(负数)N年
|
static Calendar |
beginOfDay(Calendar calendar)
获取某天的开始时间
|
static DateTime |
beginOfDay(Date date)
获取某天的开始时间
|
static Calendar |
beginOfMonth(Calendar calendar)
获取某月的开始时间
|
static DateTime |
beginOfMonth(Date date)
获取某月的开始时间
|
static Calendar |
beginOfQuarter(Calendar calendar)
获取某季度的开始时间
|
static DateTime |
beginOfQuarter(Date date)
获取某季度的开始时间
|
static Calendar |
beginOfSecond(Calendar calendar)
获取秒级别的开始时间,即忽略毫秒部分
|
static DateTime |
beginOfSecond(Date date)
获取秒级别的开始时间,即忽略毫秒部分
|
static Calendar |
beginOfWeek(Calendar calendar)
获取给定日期当前周的开始时间,周一定为一周的开始时间
|
static Calendar |
beginOfWeek(Calendar calendar,
boolean isMondayAsFirstDay)
获取给定日期当前周的开始时间
|
static DateTime |
beginOfWeek(Date date)
获取某周的开始时间,周一定为一周的开始时间
|
static Calendar |
beginOfYear(Calendar calendar)
获取某年的开始时间
|
static DateTime |
beginOfYear(Date date)
获取某年的开始时间
|
static long |
between(Date beginDate,
Date endDate,
Fields.Unit unit)
判断两个日期相差的时长,只保留绝对值
|
static long |
between(Date beginDate,
Date endDate,
Fields.Unit unit,
boolean isAbs)
判断两个日期相差的时长
|
static long |
betweenDay(Date beginDate,
Date endDate,
boolean isReset)
判断两个日期相差的天数
|
static long |
betweenMonth(Date beginDate,
Date endDate,
boolean isReset)
计算两个日期相差月数
在非重置情况下,如果起始日期的天小于结束日期的天,月数要少算1(不足1个月)
|
static long |
betweenMs(Date beginDate,
Date endDate)
判断两个日期相差的毫秒数
|
static long |
betweenYear(Date beginDate,
Date endDate,
boolean isReset)
计算两个日期相差年数
在非重置情况下,如果起始日期的月小于结束日期的月,年数要少算1(不足1年)
|
static Calendar |
calendar(Date date)
转换为Calendar对象
|
static Calendar |
calendar(long millis)
转换为Calendar对象
|
static Calendar |
ceiling(Calendar calendar,
Fields.DateField dateField)
修改日期为某个时间字段结束时间
|
static DateTime |
ceiling(Date date,
Fields.DateField dateField)
修改日期为某个时间字段结束时间
|
static int |
compareWithNow(Date date)
两个时间比较
|
static int |
compareWithNow(long date)
两个时间比较(时间戳比较)
|
static boolean |
compareWithNow(String object)
两个时间比较(时间戳比较)
|
static DateTime |
date()
转换为
DateTime对象 |
static DateTime |
date(Calendar calendar)
|
static DateTime |
date(Date date)
|
static DateTime |
date(long date)
Long类型时间转为
DateTime
同时支持10位秒级别时间戳和13位毫秒级别时间戳 |
static DateTime |
date(TemporalAccessor temporalAccessor)
|
static String |
dateCN(String date)
转换日期
|
static int |
dayOfMonth(Date date)
获得指定日期是这个日期所在月份的第几天
|
static int |
dayOfWeek(Date date)
获得指定日期是星期几,1表示周日,2表示周一
|
static Fields.Week |
dayOfWeeks(Date date)
获得指定日期是星期几
|
static Calendar |
endOfDay(Calendar calendar)
获取某天的结束时间
|
static DateTime |
endOfDay(Date date)
获取某天的结束时间
|
static Calendar |
endOfMonth(Calendar calendar)
获取某月的结束时间
|
static DateTime |
endOfMonth(Date date)
获取某月的结束时间
|
static Calendar |
endOfQuarter(Calendar calendar)
获取某季度的结束时间
|
static DateTime |
endOfQuarter(Date date)
获取某季度的结束时间
|
static Calendar |
endOfSecond(Calendar calendar)
获取秒级别的结束时间,即毫秒设置为999
|
static DateTime |
endOfSecond(Date date)
获取秒级别的结束时间,即毫秒设置为999
|
static Calendar |
endOfWeek(Calendar calendar)
获取某周的结束时间,周日定为一周的结束
|
static Calendar |
endOfWeek(Calendar calendar,
boolean isSundayAsLastDay)
获取某周的结束时间
|
static DateTime |
endOfWeek(Date date)
获取某周的结束时间
|
static Calendar |
endOfYear(Calendar calendar)
获取某年的结束时间
|
static DateTime |
endOfYear(Date date)
获取某年的结束时间
|
boolean |
equals(Object o) |
static String |
format(Date date)
按照给定的通配模式 YYYY-MM-DD HH:MM:SS ,将时间格式化成相应的字符串
|
static String |
format(Date date,
DateFormat format)
根据特定格式格式化日期
|
static String |
format(Date date,
DatePrinter format)
根据特定格式格式化日期
|
static String |
format(Date date,
String format)
根据特定格式格式化日期
|
static String |
format(LocalDateTime localDateTime)
格式化日期时间
格式 yyyy-MM-dd HH:mm:ss
|
static String |
format(LocalDateTime localDateTime,
String format)
根据特定格式格式化日期
|
static String |
format(long timestamp)
将Unix时间戳转换成日期
|
static String |
format(long timestamp,
String format)
将Unix时间戳转换成日期
|
static long |
format(String date)
将指定的日期转换成Unix时间戳
|
static long |
format(String date,
String format)
将指定的日期转换成Unix时间戳
|
static String |
format(String srcDate,
String srcPattern,
String destPattern)
按照给定的通配模式,格式化成相应的时间字符串
|
static String |
formatBetween(Date beginDate,
Date endDate)
格式化日期间隔输出,精确到毫秒
|
static String |
formatBetween(Date beginDate,
Date endDate,
Fields.Level level)
格式化日期间隔输出
|
static String |
formatBetween(long betweenMs)
格式化日期间隔输出,精确到毫秒
|
static String |
formatBetween(long betweenMs,
Fields.Level level)
格式化日期间隔输出
|
static String |
formatDate(Date date)
格式化日期部分(不包括时间)
格式 yyyy-MM-dd
|
static String |
formatDateTime(Date date)
格式化日期时间
格式 yyyy-MM-dd HH:mm:ss
|
static String |
formatHttpDate(Date date)
格式化为Http的标准日期格式
|
static String |
formatTime(Date date)
格式化时间
格式 HH:mm:ss
|
static int |
getAge(Date birthDay)
生日转为年龄,计算法定年龄
|
static int |
getAge(Date birthDay,
Date dateToCompare)
计算相对于dateToCompare的年龄,长用于计算指定生日在某年的年龄
|
static int |
getAge(String birthday)
出生日期转年龄
|
static int |
getAllWeeks(String year)
返回该年有多少个自然周
|
static String |
getAnimalYearName(int y)
获取生肖名
|
static int |
getBeginValue(Calendar calendar,
int dateField)
获取指定日期字段的最小值,例如分钟的最小值是0
|
static String |
getChineseZodiac(Calendar calendar)
通过生日计算生肖,只计算1900年后出生的人
|
static String |
getChineseZodiac(Date date)
通过生日计算生肖,只计算1900年后出生的人
|
static String |
getChineseZodiac(int year)
计算生肖,只计算1900年后出生的人
|
static String |
getDayName(int lunarDay)
获取农历日的表示
|
static int |
getEndValue(Calendar calendar,
int dateField)
获取指定日期字段的最大值,例如分钟的最大值是59
|
String |
getFullLunarName()
返回中国农历的全名
|
static Map<String,String> |
getLast(int type,
String beginkey,
String endkey,
String begin,
String end)
计算去年同期和上期的起止时间
|
static Map<String,String> |
getLast(int type,
String beginkey,
String endkey,
String beginWkey,
String endWkey,
String begin,
String end,
String beginW,
String endW)
(周)计算(周) 上期和去年同期的起止日期和起止周 计算上期的起止时间 和去年同期 type 0本期 1上期 2去年同期 起始日期key
beginkey endkey 起始日期的起止周key beginWkey endWkey 本期:begin end 本期起止周
beginW、endW
|
static List<String> |
getLast(String begin,
String end)
计算时间段内的所有的天
type:0本期1上期2去年同期
|
static Map<String,String> |
getLast(String beginkey,
String endkey,
String begin,
String end)
(年)计算本期(年)的上期
|
String |
getLunar(boolean showLeap)
返回农历日期,不包含年份
|
static String |
getMonthName(int lunarMonth)
获取农历月份
|
static Map<String,String> |
getMonths(int type,
String beginkey,
String endkey,
String begin,
String end)
(月)计算本期的上期和去年同期 1 上期 2同期 返回的mapkay beginkey endkey 本期起止:begin end
计算上期的起止时间 和去年同期 type 0本期 1上期 2去年同期
|
static List<String> |
getMonths(String StartDate,
String endDate)
当时间段内的所有月份
|
static int |
getQuarterByMonth(int month)
根据月份获取所在季度
|
static Map<String,String> |
getQuarters(int type,
String beginkey,
String endkey,
String beginWkey,
String endWkey,
String begin,
String end,
String beginW,
String endW)
(季度) 计算本期的上期起止时间和同期的起止时间 返回的mao key 时间起止:beginkey endkey 季度起止: beginWkey
endWkey 本期的时间起止:begin end 季度:beginW endW type 0本期 1上期 2去年同期 季度
|
static List<String> |
getQuarters(String StartDate,
String beginQ,
String endDate,
String endQ)
(季度)获取季度份时间段内的所有季度
|
static String |
getTimeFormatText(Date date)
返回文字描述的日期
|
static String |
getTraditionalYearName(int y)
返回传统天干地支年名称
|
static List<String> |
getWeeks(String begin,
String end,
String startw,
String endW)
(周)返回起止时间内的所有自然周
|
static int |
getWeeksCount(Date start,
Date end)
获取两个日期段相差的周数
|
static String |
getYearName(int lunarYear)
获取农历年份
|
static List<String> |
getYears(String StartDate,
String endDate)
获取年份时间段内的所有年
|
static String |
getZodiac(Calendar calendar)
通过生日计算星座
|
static String |
getZodiac(Date date)
通过生日计算星座
|
static String |
getZodiac(Fields.Month month,
int day)
通过生日计算星座
|
static String |
getZodiac(int month,
int day)
通过生日计算星座
|
int |
hashCode() |
static int |
hour(Date date,
boolean is24HourClock)
获得指定日期的小时数部分
|
static boolean |
isAM(Calendar calendar)
是否为上午
|
static boolean |
isAM(Date date)
是否为上午
|
static boolean |
isBefore(String go,
String back)
校验前面的日期go,是否早于或者等于后面的日期back
|
static boolean |
isBefore(String go,
String back,
String pattern)
校验前面的日期go,是否早于或者等于后面的日期back
|
static boolean |
isDate(String dptDate)
校验日期格式,日期不能早于当前天, 默认日期转义格式:yyyy-MM-dd
|
static boolean |
isDate(String dptDate,
String pattern)
校验日期格式,日期不能早于当前天
|
static boolean |
isDatetime(String datetime)
验证长日期格式yyyy-MM-dd HH:mm:ss
|
static boolean |
isIn(Date date,
Date beginDate,
Date endDate)
判定在指定检查时间是否过期
当前日期是否在日期指定范围内
起始日期和结束日期可以互换
|
static boolean |
isLeapYear(int year)
是否闰年
|
static boolean |
isNotLessThanToday(String date)
判断传入的日期是否 >=今天
|
static boolean |
isNotLessThanToday(String date,
String format)
判断传入的日期是否>=今天
|
static boolean |
isPM(Calendar calendar)
是否为下午
|
static boolean |
isPM(Date date)
是否为下午
|
static boolean |
isShortDate(String date)
校验短日期格式[yyyyMMdd]
|
static DateTime |
lastMonth()
上个月
|
static DateTime |
lastWeek()
上周
|
static long |
luanrDiff(DateUtils lc1,
DateUtils lc2,
int field)
计算两个农历日期之差
|
static Calendar |
lunar2Solar(int lunarYear,
int lunarMonth,
int LunarDate,
boolean isLeapMonth)
农历转公历
|
static int |
millsecond(Date date)
获得指定日期的毫秒数部分
|
static int |
minute(Date date)
获得指定日期的分钟数部分
例如:10:04:15.250 =》 4
|
static Calendar |
modify(Calendar calendar,
int dateField,
Fields.ModifyType modifyType)
修改日期
|
static int |
month(Date date)
获得月份,从0开始计数
|
static Fields.Month |
months(Date date)
获得月份
|
static long |
nanosToMillis(long duration)
纳秒转毫秒
|
static double |
nanosToSeconds(long duration)
纳秒转秒,保留小数
|
static DateTime |
nextMonth()
下个月
|
static DateTime |
nextWeek()
下周
|
static String |
now()
当前时间,格式 yyyy-MM-dd HH:mm:ss
|
static DateTime |
offset(Date date,
Fields.DateField dateField,
int offset)
获取指定日期偏移指定时间后的时间
|
static DateTime |
offsetDay(Date date,
int offset)
偏移天
|
static DateTime |
offsetHour(Date date,
int offset)
偏移小时
|
static DateTime |
offsetMillisecond(Date date,
int offset)
偏移毫秒数
|
static DateTime |
offsetMinute(Date date,
int offset)
偏移分钟
|
static DateTime |
offsetMonth(Date date,
int offset)
偏移月
|
static DateTime |
offsetSecond(Date date,
int offset)
偏移秒数
|
static DateTime |
offsetWeek(Date date,
int offset)
偏移周
|
static DateTime |
parse(CharSequence dateCharSequence)
将日期字符串转换为
DateTime对象,格式:
yyyy-MM-dd HH:mm:ss
yyyy/MM/dd HH:mm:ss
yyyy.MM.dd HH:mm:ss
yyyy年MM月dd日 HH时mm分ss秒
yyyy-MM-dd
yyyy/MM/dd
yyyy.MM.dd
HH:mm:ss
HH时mm分ss秒
yyyy-MM-dd HH:mm
yyyy-MM-dd HH:mm:ss.SSS
yyyyMMddHHmmss
yyyyMMddHHmmssSSS
yyyyMMdd
EEE, dd MMM yyyy HH:mm:ss z
EEE MMM dd HH:mm:ss zzz yyyy
yyyy-MM-dd'T'HH:mm:ss'Z'
yyyy-MM-dd'T'HH:mm:ss.SSS'Z'
yyyy-MM-dd'T'HH:mm:ssZ
yyyy-MM-dd'T'HH:mm:ss.SSSZ
|
static LocalDateTime |
parse(CharSequence dateStr,
String format)
构建LocalDateTime对象
|
static DateTime |
parse(String dateStr,
DateFormat dateFormat)
构建DateTime对象
|
static DateTime |
parse(String dateStr,
DateParser parser)
构建DateTime对象
|
static DateTime |
parse(String dateStr,
String format)
将特定格式的日期转换为Date对象
|
static DateTime |
parseCST(CharSequence cstString)
解析CST时间,格式:
EEE MMM dd HH:mm:ss z yyyy(例如:Wed Aug 01 00:00:00 CST 2020)
|
static DateTime |
parseDate(String dateString)
格式yyyy-MM-dd
|
static DateTime |
parseDateTime(String dateString)
格式yyyy-MM-dd HH:mm:ss
|
static DateTime |
parseTime(String timeString)
解析时间,格式HH:mm:ss,默认为1970-01-01
|
static DateTime |
parseTimeToday(String timeString)
解析时间,格式HH:mm:ss,日期默认为今天
|
static DateTime |
parseUTC(String utcString)
解析UTC时间,格式:
yyyy-MM-dd'T'HH:mm:ss'Z'
yyyy-MM-dd'T'HH:mm:ss.SSS'Z'
yyyy-MM-dd'T'HH:mm:ssZ
yyyy-MM-dd'T'HH:mm:ss.SSSZ
|
static int |
quarter(Date date)
获得指定日期所属季度,从1开始计数
|
static Fields.Quarter |
quarters(Date date)
获得指定日期所属季度
|
static Boundary |
range(Date start,
Date end,
Fields.DateField unit)
创建日期范围生成器
|
static List<DateTime> |
rangeToList(Date start,
Date end,
Fields.DateField unit)
创建日期范围生成器
|
static Calendar |
round(Calendar calendar,
Fields.DateField dateField)
修改日期为某个时间字段四舍五入时间
|
static DateTime |
round(Date date,
Fields.DateField dateField)
修改日期为某个时间字段四舍五入时间
|
static int |
second(Date date)
获得指定日期的秒数部分
|
static String |
secondToTime(int seconds)
秒数转为时间格式(HH:mm:ss)
|
static Date |
setDays(Date date,
int amount)
原有时间基础上,设置N天
|
static Date |
setHours(Date date,
int amount)
原有时间基础上,设置N小时
|
static Date |
setMilliseconds(Date date,
int amount)
原有时间基础上,设置N毫秒
|
static Date |
setMinutes(Date date,
int amount)
原有时间基础上,设置N分钟
|
static int |
setMonthByQuarter(int quarter)
根据季度返回季度第一月
|
static String |
setMonthByQuarterToString(int type,
int quarter)
根据季度返回季度第一月或最后一月 0 起始月 1截止月
|
static Date |
setMonths(Date date,
int amount)
原有时间基础上,设置加上/减去(负数)N月
|
static Date |
setSeconds(Date date,
int amount)
原有时间基础上,设置N秒
|
static Date |
setYears(Date date,
int amount)
原有时间基础上,设置加上/减去(负数)N年
|
static DateUtils |
solar2Lunar(Calendar solar)
公历转农历
|
static long |
solarDiff(Calendar solar1,
Calendar solar2,
int field)
求两个公历日期之差,field可以为年月日,时分秒
一年按365天计算,一个月按30天计算
|
static long |
solarDiff(int solarCode1,
int solarCode2,
int field)
判断两个整数所代表公历日期的差值
一年按365天计算,一个月按30天计算
|
static long |
spendMs(long preTime)
计时,常用于记录某段代码的执行时间,单位:毫秒
|
static long |
spendNt(long preTime)
计时,常用于记录某段代码的执行时间,单位:纳秒
|
static int |
thisDayOfMonth() |
static int |
thisDayOfWeek() |
static Fields.Week |
thisDayOfWeekEnum() |
static int |
thisHour(boolean is24HourClock) |
static int |
thisMillsecond() |
static int |
thisMinute() |
static int |
thisMonth() |
static Fields.Month |
thisMonthEnum() |
static int |
thisSecond() |
static int |
thisWeekOfMonth() |
static int |
thisWeekOfYear() |
static int |
thisYear() |
static TimeInterval |
timer()
计时器
计算某个过程花费的时间,精确到毫秒
|
static long |
timestamp()
当前时间秒数
|
static long |
timestamp(boolean isNano)
当前时间long
|
static int |
timeToSecond(String timeStr)
HH:mm:ss 时间格式字符串转为秒数
|
static Calendar |
toCalendar(Date date)
将
Date转换为Calendar |
static Calendar |
toCalendar(Date date,
TimeZone timeZone)
将
Date转换为Calendar. |
static Instant |
toInstant(Calendar calendar)
Calendar
Instant对象 |
static Instant |
toInstant(Date date)
Date对象转换为
Instant对象 |
static Instant |
toInstant(TemporalAccessor temporalAccessor)
Date对象转换为
Instant对象 |
static int |
toIntSecond(Date date)
格式化成yyMMddHHmm后转换为int型
|
static LocalDateTime |
toLocalDateTime(Calendar calendar)
Calendar 转换为 LocalDateTime,使用系统默认时区 |
static LocalDateTime |
toLocalDateTime(Date date)
Date 转换为 LocalDateTime,使用系统默认时区 |
static LocalDateTime |
toLocalDateTime(Instant instant)
Instant 转换为 LocalDateTime,使用系统默认时区 |
static DateTime |
tomorrow()
明天
|
String |
toString() |
static Calendar |
truncate(Calendar calendar,
Fields.DateField dateField)
修改日期为某个时间字段起始时间
|
static DateTime |
truncate(Date date,
Fields.DateField dateField)
修改日期为某个时间字段起始时间
|
static String |
weekCN(String date)
转换星期
|
static int |
weekCount(Date start,
Date end)
计算指定指定时间区间内的周数
|
static int |
weekOfMonth(Date date)
获得指定日期是所在月份的第几周
|
static int |
weekOfYear(Date date)
获得指定日期是所在年份的第几周
|
static int |
year(Date date)
获得年的部分
|
static String |
yearAndQuarter(Date date)
获得指定日期年份和季节
格式:[20131]表示2013年第一季度
|
static LinkedHashSet<String> |
yearAndQuarter(Date startDate,
Date endDate)
获得指定日期区间内的年份和季节
|
static LinkedHashSet<String> |
yearAndQuarter(long startDate,
long endDate)
获得指定日期区间内的年份和季节
|
static DateTime |
yesterday()
昨天
|
public static final int MIN_YEAR
public static final int MAX_YEAR
public DateUtils()
public DateUtils(int lyear,
int lmonth,
int ldate,
boolean isleapMonth)
lyear - 农历年lmonth - 农历月份,范围1-12ldate - 农历日isleapMonth - 是否闰月public DateUtils(Calendar calendar)
calendar - 公历日期public static DateTime date(Date date)
date - Long类型Date(Unix时间戳)public static DateTime date(long date)
DateTime
同时支持10位秒级别时间戳和13位毫秒级别时间戳date - Long类型Date(Unix时间戳)public static DateTime date(TemporalAccessor temporalAccessor)
temporalAccessor - TemporalAccessorpublic static Calendar calendar(Date date)
date - 日期对象public static Calendar calendar(long millis)
millis - 时间戳public static String now()
public static long timestamp()
public static long timestamp(boolean isNano)
isNano - 是否为高精度时间public static int year(Date date)
date - 日期public static int quarter(Date date)
date - 日期public static Fields.Quarter quarters(Date date)
date - 日期public static int month(Date date)
date - 日期public static Fields.Month months(Date date)
date - 日期public static int weekOfYear(Date date)
date - 日期public static int weekOfMonth(Date date)
date - 日期public static int dayOfMonth(Date date)
date - 日期public static int dayOfWeek(Date date)
date - 日期public static Fields.Week dayOfWeeks(Date date)
date - 日期public static int hour(Date date, boolean is24HourClock)
date - 日期is24HourClock - 是否24小时制public static int minute(Date date)
date - 日期public static int second(Date date)
date - 日期public static int millsecond(Date date)
date - 日期public static boolean isAM(Date date)
date - 日期public static boolean isAM(Calendar calendar)
calendar - Calendarpublic static boolean isPM(Date date)
date - 日期public static boolean isPM(Calendar calendar)
calendar - Calendarpublic static int thisYear()
public static int thisMonth()
public static Fields.Month thisMonthEnum()
public static int thisWeekOfYear()
public static int thisWeekOfMonth()
public static int thisDayOfMonth()
public static int thisDayOfWeek()
public static Fields.Week thisDayOfWeekEnum()
public static int thisHour(boolean is24HourClock)
is24HourClock - 是否24小时制public static int thisMinute()
public static int thisSecond()
public static int thisMillsecond()
public static String yearAndQuarter(Date date)
date - 日期public static LinkedHashSet<String> yearAndQuarter(Date startDate, Date endDate)
startDate - 起始日期(包含)endDate - 结束日期(包含)public static LinkedHashSet<String> yearAndQuarter(long startDate, long endDate)
startDate - 起始日期(包含)endDate - 结束日期(包含)public static String format(Date date)
date - 待格式化的时间public static String format(Date date, String format)
date - 被格式化的日期format - 日期格式,常用格式见: Fieldspublic static String format(Date date, DatePrinter format)
date - 被格式化的日期format - DatePrinter 或 FormatBuilderpublic static String format(Date date, DateFormat format)
date - 被格式化的日期format - SimpleDateFormatpublic static String format(String srcDate, String srcPattern, String destPattern)
srcDate - 原始时间字符串srcPattern - 原始时间通配符destPattern - 格式化成的时间通配符public static long format(String date)
date - 需要转换的日期 yyyy-MM-dd HH:mm:sspublic static String format(long timestamp)
timestamp - 时间戳public static String format(long timestamp, String format)
timestamp - 时间戳format - 格式public static long format(String date, String format)
date - 需要转换的日期format - 格式public static String format(LocalDateTime localDateTime)
localDateTime - 被格式化的日期public static String format(LocalDateTime localDateTime, String format)
localDateTime - 被格式化的日期format - 日期格式,常用格式见: Fieldspublic static String formatDate(Date date)
date - 被格式化的日期public static String formatHttpDate(Date date)
date - 被格式化的日期public static String formatTime(Date date)
date - 被格式化的日期public static String formatDateTime(Date date)
date - 被格式化的日期public static DateTime parse(CharSequence dateCharSequence)
DateTime对象,格式:
dateCharSequence - 日期字符串public static LocalDateTime parse(CharSequence dateStr, String format)
dateStr - 时间字符串(带格式)format - 使用Fields定义的格式public static DateTime parse(String dateStr, DateFormat dateFormat)
dateStr - Date字符串dateFormat - 格式化器 SimpleDateFormatpublic static DateTime parse(String dateStr, DateParser parser)
dateStr - Date字符串parser - 格式化器,FormatBuilderpublic static DateTime parse(String dateStr, String format)
dateStr - 特定格式的日期format - 格式,例如yyyy-MM-ddpublic static DateTime parseDate(String dateString)
dateString - 标准形式的日期字符串public static DateTime parseTime(String timeString)
timeString - 标准形式的日期字符串public static DateTime parseDateTime(String dateString)
dateString - 标准形式的时间字符串public static DateTime parseTimeToday(String timeString)
timeString - 标准形式的日期字符串public static DateTime parseCST(CharSequence cstString)
cstString - UTC时间public static DateTime parseUTC(String utcString)
utcString - UTC时间public static DateTime truncate(Date date, Fields.DateField dateField)
public static Calendar truncate(Calendar calendar, Fields.DateField dateField)
public static DateTime round(Date date, Fields.DateField dateField)
public static Calendar round(Calendar calendar, Fields.DateField dateField)
public static DateTime ceiling(Date date, Fields.DateField dateField)
public static Calendar ceiling(Calendar calendar, Fields.DateField dateField)
public static DateTime beginOfSecond(Date date)
date - 日期DateTimepublic static DateTime endOfSecond(Date date)
date - 日期DateTimepublic static DateTime beginOfDay(Date date)
date - 日期DateTimepublic static DateTime endOfDay(Date date)
date - 日期DateTimepublic static DateTime beginOfWeek(Date date)
date - 日期DateTimepublic static DateTime endOfWeek(Date date)
date - 日期DateTimepublic static Calendar beginOfWeek(Calendar calendar, boolean isMondayAsFirstDay)
public static DateTime beginOfMonth(Date date)
date - 日期DateTimepublic static DateTime endOfMonth(Date date)
date - 日期DateTimepublic static DateTime beginOfQuarter(Date date)
date - 日期DateTimepublic static DateTime endOfQuarter(Date date)
date - 日期DateTimepublic static DateTime beginOfYear(Date date)
date - 日期DateTimepublic static DateTime endOfYear(Date date)
date - 日期DateTimepublic static DateTime yesterday()
public static DateTime tomorrow()
public static DateTime lastWeek()
public static DateTime nextWeek()
public static DateTime lastMonth()
public static DateTime nextMonth()
public static DateTime offsetMillisecond(Date date, int offset)
date - 日期offset - 偏移毫秒数,正数向未来偏移,负数向历史偏移public static DateTime offsetSecond(Date date, int offset)
date - 日期offset - 偏移秒数,正数向未来偏移,负数向历史偏移public static DateTime offsetMinute(Date date, int offset)
date - 日期offset - 偏移分钟数,正数向未来偏移,负数向历史偏移public static DateTime offsetHour(Date date, int offset)
date - 日期offset - 偏移小时数,正数向未来偏移,负数向历史偏移public static DateTime offsetDay(Date date, int offset)
date - 日期offset - 偏移天数,正数向未来偏移,负数向历史偏移public static DateTime offsetWeek(Date date, int offset)
date - 日期offset - 偏移周数,正数向未来偏移,负数向历史偏移public static DateTime offsetMonth(Date date, int offset)
date - 日期offset - 偏移月数,正数向未来偏移,负数向历史偏移public static DateTime offset(Date date, Fields.DateField dateField, int offset)
date - 基准日期dateField - 偏移的粒度大小(小时、天、月等)offset - 偏移量,正数为向后偏移,负数为向前偏移public static long between(Date beginDate, Date endDate, Fields.Unit unit)
beginDate - 起始日期endDate - 结束日期unit - 相差的单位public static long between(Date beginDate, Date endDate, Fields.Unit unit, boolean isAbs)
beginDate - 起始日期endDate - 结束日期unit - 相差的单位isAbs - 日期间隔是否只保留绝对值正数public static long betweenMs(Date beginDate, Date endDate)
beginDate - 起始日期endDate - 结束日期public static long betweenDay(Date beginDate, Date endDate, boolean isReset)
有时候我们计算相差天数的时候需要忽略时分秒 比如:2016-02-01 23:59:59和2016-02-02 00:00:00相差一秒 如果isReset为false相差天数为0 如果isReset为true相差天数将被计算为1
beginDate - 起始日期endDate - 结束日期isReset - 是否重置时间为起始时间public static long betweenMonth(Date beginDate, Date endDate, boolean isReset)
beginDate - 起始日期endDate - 结束日期isReset - 是否重置时间为起始时间(重置天时分秒)public static long betweenYear(Date beginDate, Date endDate, boolean isReset)
beginDate - 起始日期endDate - 结束日期isReset - 是否重置时间为起始时间(重置月天时分秒)public static String formatBetween(Date beginDate, Date endDate, Fields.Level level)
beginDate - 起始日期endDate - 结束日期level - 级别,按照天、小时、分、秒、毫秒分为5个等级public static String formatBetween(Date beginDate, Date endDate)
beginDate - 起始日期endDate - 结束日期public static String formatBetween(long betweenMs, Fields.Level level)
betweenMs - 日期间隔level - 级别,按照天、小时、分、秒、毫秒分为5个等级public static String formatBetween(long betweenMs)
betweenMs - 日期间隔public static long spendNt(long preTime)
preTime - 之前记录的时间public static long spendMs(long preTime)
preTime - 之前记录的时间public static int toIntSecond(Date date)
date - 日期public static int weekCount(Date start, Date end)
start - 开始时间end - 结束时间public static TimeInterval timer()
public static boolean isLeapYear(int year)
year - 年public static boolean isIn(Date date, Date beginDate, Date endDate)
date - 被检查的日期beginDate - 起始日期endDate - 结束日期public static int getAge(Date birthDay)
birthDay - 生日public static int getAge(String birthday)
birthday - 时间戳字符串public static int getAge(Date birthDay, Date dateToCompare)
birthDay - 生日dateToCompare - 需要对比的日期public static int compareWithNow(Date date)
date - 日期public static int compareWithNow(long date)
date - 日期public static boolean compareWithNow(String object)
object - 字符串日期public static List<String> getYears(String StartDate, String endDate)
StartDate - 开始时间endDate - 截止时间public static Map<String,String> getQuarters(int type, String beginkey, String endkey, String beginWkey, String endWkey, String begin, String end, String beginW, String endW)
type - 计算上期beginkey - 开始时间keyendkey - 截止时间keybeginWkey - 开始周keyendWkey - 截止周keybegin - 开始时间end - 截止时间beginW - 开始周endW - 截止周public static List<String> getQuarters(String StartDate, String beginQ, String endDate, String endQ)
StartDate - 开始日期beginQ - 开始季度endDate - 截止日期endQ - 结束季度public static Map<String,String> getLast(int type, String beginkey, String endkey, String begin, String end)
type - 计算上期beginkey - 开始时间keyendkey - 截止时间keybegin - 开始时间end - 截止时间public static List<String> getLast(String begin, String end)
begin - 起始日期end - 截止日期public static Map<String,String> getLast(int type, String beginkey, String endkey, String beginWkey, String endWkey, String begin, String end, String beginW, String endW)
type - 计算上期beginkey - 开始时间keyendkey - 截止时间keybeginWkey - 开始周keyendWkey - 截止周keybegin - 开始时间end - 截止时间beginW - 开始周endW - 截止周public static Map<String,String> getLast(String beginkey, String endkey, String begin, String end)
beginkey - 开始时间keyendkey - 截止时间keybegin - 开始时间end - 截止时间public static List<String> getMonths(String StartDate, String endDate)
StartDate - 开始日期endDate - 结束日期public static Map<String,String> getMonths(int type, String beginkey, String endkey, String begin, String end)
type - 计算上期beginkey - 开始时间keyendkey - 截止时间keybegin - 开始时间end - 截止时间public static List<String> getWeeks(String begin, String end, String startw, String endW)
begin - 时间起end - 时间止startw - 周起endW - 周止public static int getAllWeeks(String year)
year - 最多53 一般52 如果12月月末今天在本年53周(属于第二年第一周) 那么按照当年52周算public static int getWeeksCount(Date start, Date end)
start - 日期end - 日期public static int setMonthByQuarter(int quarter)
quarter - 季度public static String setMonthByQuarterToString(int type, int quarter)
type - 第一个月份quarter - 季度public static int getQuarterByMonth(int month)
month - 月份public static String getTimeFormatText(Date date)
date - 日期public static Date addYears(Date date, int amount)
date - 日期amount - 年份public static Date addMonths(Date date, int amount)
date - 日期amount - 月份public static Date addWeeks(Date date, int amount)
date - 日期amount - 周public static Date addDays(Date date, int amount)
date - 日期amount - 天public static Date addHours(Date date, int amount)
date - 日期amount - 小时public static Date addMinutes(Date date, int amount)
date - 日期amount - 分钟public static Date addSeconds(Date date, int amount)
date - 日期amount - 秒public static Date addMilliseconds(Date date, int amount)
date - 日期amount - 毫秒public static Date setYears(Date date, int amount)
date - 时间amount - 数量public static Date setMonths(Date date, int amount)
date - 时间amount - 数量public static Date setDays(Date date, int amount)
date - 日期amount - 天public static Date setHours(Date date, int amount)
date - 日期amount - 小时public static Date setMinutes(Date date, int amount)
date - 日期amount - 小时public static Date setSeconds(Date date, int amount)
date - 日期amount - 小时public static Date setMilliseconds(Date date, int amount)
date - 日期amount - 小时public static Calendar toCalendar(Date date)
Date转换为Calendardate - 日期转换为日历的日期public static Calendar toCalendar(Date date, TimeZone timeZone)
Date转换为Calendar.date - 日期转换为日历的日期timeZone - 时区public static boolean isDate(String dptDate, String pattern)
dptDate - 日期,仅需包含年月日pattern - 日期转移格式public static boolean isDate(String dptDate)
dptDate - 日期,仅需包含年月日public static boolean isBefore(String go, String back, String pattern)
go - 日期1back - 日期2pattern - 日期正则表达式public static boolean isBefore(String go, String back)
go - 日期1back - 日期2public static boolean isDatetime(String datetime)
datetime - 日期public static boolean isShortDate(String date)
date - 短日期public static boolean isNotLessThanToday(String date)
date - 待判断的日期public static boolean isNotLessThanToday(String date, String format)
date - 待判断的日期format - 格式public static String getZodiac(Calendar calendar)
calendar - 出生日期public static String getZodiac(Fields.Month month, int day)
month - 月,从0开始计数day - 天public static String getZodiac(int month, int day)
month - 月,从0开始计数,见Fields.Month#getValue()day - 天public static String getChineseZodiac(Date date)
date - 出生日期(年需农历)public static String getChineseZodiac(Calendar calendar)
calendar - 出生日期(年需农历)public static String getChineseZodiac(int year)
year - 农历年public static int getBeginValue(Calendar calendar, int dateField)
calendar - CalendardateField - Fields.DateFieldCalendar.getActualMinimum(int)public static int getEndValue(Calendar calendar, int dateField)
calendar - CalendardateField - Fields.DateFieldCalendar.getActualMaximum(int)public static Calendar modify(Calendar calendar, int dateField, Fields.ModifyType modifyType)
public static long nanosToMillis(long duration)
duration - 时长public static double nanosToSeconds(long duration)
duration - 时长public static Instant toInstant(Date date)
Instant对象date - Date对象Instant对象public static Instant toInstant(Calendar calendar)
Instant对象calendar - Date对象Instant对象public static Instant toInstant(TemporalAccessor temporalAccessor)
Instant对象temporalAccessor - Date对象Instant对象public static LocalDateTime toLocalDateTime(Instant instant)
Instant 转换为 LocalDateTime,使用系统默认时区instant - InstantLocalDateTimepublic static LocalDateTime toLocalDateTime(Calendar calendar)
Calendar 转换为 LocalDateTime,使用系统默认时区calendar - CalendarLocalDateTimepublic static LocalDateTime toLocalDateTime(Date date)
Date 转换为 LocalDateTime,使用系统默认时区date - CalendarLocalDateTimepublic static int timeToSecond(String timeStr)
timeStr - 字符串时分秒(HH:mm:ss)格式public static String secondToTime(int seconds)
seconds - 需要转换的秒数public static Boundary range(Date start, Date end, Fields.DateField unit)
start - 起始日期时间end - 结束日期时间unit - 步进单位Boundarypublic static List<DateTime> rangeToList(Date start, Date end, Fields.DateField unit)
start - 起始日期时间end - 结束日期时间unit - 步进单位Boundarypublic static String getDayName(int lunarDay)
lunarDay - 农历日数值表示public static String getMonthName(int lunarMonth)
lunarMonth - 农历月数值表示public static String getYearName(int lunarYear)
lunarYear - 农历年数值表示public static Calendar lunar2Solar(int lunarYear, int lunarMonth, int LunarDate, boolean isLeapMonth)
lunarYear - 农历年lunarMonth - 农历月,从1开始LunarDate - 农历日isLeapMonth - 是否润月public static long luanrDiff(DateUtils lc1, DateUtils lc2, int field)
lc1 - 农历1lc2 - 农历2field - 计算的维度,比如按月,天等public static DateUtils solar2Lunar(Calendar solar)
solar - 公历日期public static long solarDiff(int solarCode1,
int solarCode2,
int field)
solarCode1 - 农历日期代码solarCode2 - 农历日期代码field - 差值单位public static long solarDiff(Calendar solar1, Calendar solar2, int field)
solar1 - 历日期solar2 - 历日期field - 差值单位public static String getTraditionalYearName(int y)
y - 农历年public static String getAnimalYearName(int y)
y - 农历年public String getFullLunarName()
public void add(int field,
int amount)
GregorianCalendar.add类似field - 单位amount - 数值GregorianCalendarpublic String getLunar(boolean showLeap)
showLeap - 是否显示闰月的闰字Copyright © 2020. All rights reserved.