Package | Description |
---|---|
org.dromara.hutool.core.data |
数据相关封装和工具类
在Hutool中,“数据”是指社会属性的内容 如ID、电话、统一社会信用代码、密码、坐标系、数据脱敏等。 |
org.dromara.hutool.core.date |
日期封装,日期的核心为DateTime类,DateUtil提供日期操作的入口
|
org.dromara.hutool.core.date.format.parser |
提供日期解析相关封装,主要包括:
DateParser
/ | \
FastDateParser RegisterDateParser RegexDateParser
(根据日期格式解析) (根据注册的模式匹配解析) (通过预定义正则解析)
|
org.dromara.hutool.core.util |
提供各种工具方法,按照归类入口为XXXUtil,如字符串工具StrUtil等
|
org.dromara.hutool.poi.excel.sax |
Sax方式操作Excel方式的封装
|
Modifier and Type | Method and Description |
---|---|
DateTime |
CIN.getBirthDate()
从身份证号码中获取生日日期
|
static DateTime |
IdcardUtil.getBirthDate(String idCard)
从身份证号码中获取生日日期,只支持15或18位身份证号码
|
Modifier and Type | Method and Description |
---|---|
static DateTime |
DateUtil.beginOfDay(Date date)
获取某天的开始时间
|
static DateTime |
DateUtil.beginOfHour(Date date)
获取某小时的开始时间
|
static DateTime |
DateUtil.beginOfMinute(Date date)
获取某分钟的开始时间
|
static DateTime |
DateUtil.beginOfMonth(Date date)
获取某月的开始时间
|
static DateTime |
DateUtil.beginOfQuarter(Date date)
获取某季度的开始时间
|
static DateTime |
DateUtil.beginOfSecond(Date date)
获取秒级别的开始时间,即毫秒部分设置为0
|
static DateTime |
DateUtil.beginOfWeek(Date date)
获取某周的开始时间,周一定为一周的开始时间
|
static DateTime |
DateUtil.beginOfWeek(Date date,
boolean isMondayAsFirstDay)
获取某周的开始时间
|
static DateTime |
DateUtil.beginOfYear(Date date)
获取某年的开始时间
|
static DateTime |
DateUtil.ceiling(Date date,
DateField dateField,
boolean truncateMillisecond)
修改日期为某个时间字段结束时间
可选是否归零毫秒。 |
static DateTime |
DateUtil.date(Calendar calendar)
|
static DateTime |
DateUtil.date(Date date)
|
static DateTime |
DateUtil.date(Date date,
TimeZone timeZone)
|
static DateTime |
DateUtil.date(long date)
Long类型时间转为
DateTime 只支持毫秒级别时间戳,如果需要秒级别时间戳,请自行×1000L |
static DateTime |
DateUtil.date(TemporalAccessor temporalAccessor)
|
static DateTime |
DateUtil.date(XMLGregorianCalendar date)
|
static DateTime |
DateUtil.dateNew(Date date)
|
static DateTime |
DateUtil.dateSecond()
当前时间,转换为
DateTime 对象,忽略毫秒部分 |
static DateTime |
DateUtil.endOfDay(Date date,
boolean truncateMillisecond)
获取某天的结束时间
|
static DateTime |
DateUtil.endOfHour(Date date,
boolean truncateMillisecond)
获取某小时的结束时间
|
static DateTime |
DateUtil.endOfMinute(Date date,
boolean truncateMillisecond)
获取某分钟的结束时间
|
static DateTime |
DateUtil.endOfMonth(Date date,
boolean truncateMillisecond)
获取某月的结束时间
|
static DateTime |
DateUtil.endOfQuarter(Date date,
boolean truncateMillisecond)
获取某季度的结束时间
|
static DateTime |
DateUtil.endOfSecond(Date date,
boolean truncateMillisecond)
获取秒级别的结束时间,即毫秒设置为999
|
static DateTime |
DateUtil.endOfWeek(Date date,
boolean isSundayAsLastDay,
boolean truncateMillisecond)
获取某周的结束时间
|
static DateTime |
DateUtil.endOfYear(Date date,
boolean truncateMillisecond)
获取某年的结束时间
|
static DateTime |
DateUtil.lastMonth()
上个月
|
static DateTime |
DateUtil.lastWeek()
上周
|
static DateTime |
DateUtil.nextMonth()
下个月
|
static DateTime |
DateUtil.nextWeek()
下周
|
static DateTime |
DateUtil.now()
当前时间,转换为
DateTime 对象 |
static DateTime |
DateTime.now()
现在的时间
|
static DateTime |
DateTime.of(Calendar calendar)
|
static DateTime |
DateTime.of(Date date)
转换JDK date为 DateTime,如果传入为原生对象,使用默认时区
|
static DateTime |
DateTime.of(long timeMillis)
转换时间戳为 DateTime,默认时区
|
static DateTime |
DateTime.of(String dateStr,
String format)
构造
|
static DateTime |
DateUtil.offset(Date date,
DateField dateField,
int offset)
获取指定日期偏移指定时间后的时间,生成的偏移日期不影响原日期
|
DateTime |
DateTime.offset(DateField datePart,
int offset)
调整日期和时间
如果此对象为可变对象,返回自身,否则返回新对象,设置是否可变对象见 setMutable(boolean) |
static DateTime |
DateUtil.offsetDay(Date date,
int offset)
偏移天
|
static DateTime |
DateUtil.offsetHour(Date date,
int offset)
偏移小时
|
static DateTime |
DateUtil.offsetMillisecond(Date date,
int offset)
偏移毫秒数
|
static DateTime |
DateUtil.offsetMinute(Date date,
int offset)
偏移分钟
|
static DateTime |
DateUtil.offsetMonth(Date date,
int offset)
偏移月
|
DateTime |
DateTime.offsetNew(DateField datePart,
int offset)
调整日期和时间
返回调整后的新DateTime,不影响原对象 |
static DateTime |
DateUtil.offsetSecond(Date date,
int offset)
偏移秒数
|
static DateTime |
DateUtil.offsetWeek(Date date,
int offset)
偏移周
|
static DateTime |
DateUtil.offsetYear(Date date,
int offset)
偏移年
|
static DateTime |
DateUtil.parse(CharSequence dateCharSequence)
将日期字符串转换为
DateTime 对象,在转换过程中,如果字符串中有时区信息,表示是指定时区的时间此时此方法会将时区转换为当前时区,时间戳会根据时区变化。 |
static DateTime |
DateUtil.parse(CharSequence dateStr,
DateFormat dateFormat)
构建DateTime对象
|
static DateTime |
DateUtil.parse(CharSequence dateStr,
DateTimeFormatter formatter)
构建DateTime对象
|
static DateTime |
DateUtil.parse(CharSequence dateStr,
PositionDateParser parser)
构建DateTime对象
|
static DateTime |
DateUtil.parse(CharSequence dateStr,
PositionDateParser parser,
boolean lenient)
构建DateTime对象
|
static DateTime |
DateUtil.parse(CharSequence dateStr,
String format)
将特定格式的日期转换为Date对象
|
static DateTime |
DateUtil.parseByPatterns(String str,
String... parsePatterns)
通过给定的日期格式解析日期时间字符串。
|
static DateTime |
DateUtil.round(Date date,
DateField dateField)
修改日期为某个时间字段四舍五入时间
|
DateTime |
DateTime.setField(DateField field,
int value)
设置日期的某个部分
如果此对象为可变对象,返回自身,否则返回新对象,设置是否可变对象见 setMutable(boolean) |
DateTime |
DateTime.setField(int field,
int value)
设置日期的某个部分
如果此对象为可变对象,返回自身,否则返回新对象,设置是否可变对象见 setMutable(boolean) |
DateTime |
DateTime.setFirstDayOfWeek(Week firstDayOfWeek)
|
DateTime |
DateTime.setMinimalDaysInFirstWeek(int minimalDaysInFirstWeek)
设置第一周最少天数
|
DateTime |
DateTime.setMutable(boolean mutable)
设置对象是否可变 如果为不可变对象,以下方法将返回新方法:
offset(DateField, int)
setField(DateField, int)
setField(int, int)
如果为不可变对象,setTime(long) 将抛出异常 |
DateTime |
DateTime.setTimeZone(TimeZone timeZone)
设置时区
|
DateTime |
DateBuilder.toDate()
将当前时间对象转换为
DateTime 类型。 |
static DateTime |
DateUtil.today()
当天开始的时间,结果类似:2022-10-26 00:00:00
|
static DateTime |
DateUtil.tomorrow()
明天
|
DateTime |
DateBuilder.toZonedDateTime()
转换为带时区信息的
DateTime 此方法用于保留原始时间戳,并且不丢失时区信息 |
static DateTime |
DateUtil.truncate(Date date,
DateField dateField)
修改日期为某个时间字段起始时间
|
static DateTime |
DateUtil.yesterday()
昨天
|
Modifier and Type | Method and Description |
---|---|
static List<DateTime> |
DateUtil.rangeContains(DateRange start,
DateRange end)
俩个时间区间取交集
|
static List<DateTime> |
DateUtil.rangeNotContains(DateRange start,
DateRange end)
俩个时间区间取差集(end - start)
|
static List<DateTime> |
DateUtil.rangeToList(Date start,
Date end,
DateField unit)
根据步进单位获取起始日期时间和结束日期时间的时间区间集合
|
static List<DateTime> |
DateUtil.rangeToList(Date start,
Date end,
DateField unit,
int step)
根据步进单位和步进获取起始日期时间和结束日期时间的时间区间集合
|
Modifier and Type | Method and Description |
---|---|
DateTime |
TimeParser.parse(CharSequence source) |
DateTime |
PatternsDateParser.parse(CharSequence source) |
DateTime |
DefaultRegexDateParser.parse(CharSequence source)
解析日期,此方法线程安全
|
Modifier and Type | Method and Description |
---|---|
static DateTime |
RandomUtil.randomDate(Date baseDate,
DateField dateField,
int min,
int max)
以给定日期为基准,随机产生一个日期
|
static DateTime |
RandomUtil.randomDay(int min,
int max)
以当天为基准,随机产生一个日期
|
Modifier and Type | Method and Description |
---|---|
static DateTime |
ExcelSaxUtil.getDateValue(double value)
获取日期
|
static DateTime |
ExcelSaxUtil.getDateValue(String value)
获取日期
|
Copyright © 2025. All rights reserved.