Hutool 日期时间工具-DateUtil使用(格式化输出,字符串转日期,时间差,格式化时间差,Long、Date相互转化,星期几,时间偏移,获取时间指定部分,开始结束时间)

        考虑到 Java 本身对日期时间的支持有限,并且 Date 和 Calendar 对象的并存导致各种方法使用混乱和复杂,故使用此工具类做了封装。这其中的封装主要是日期和字符串之间的转换,以及提供对日期的定位(一个月前等等)。

        对于 Date 对象,为了便捷,使用了一个 DateTime 类来代替之,继承自 Date 对象,主要的便利在于,覆盖了 toString() 方法,返回 yyyy-MM-dd HH:mm:ss 形式的字符串,方便在输出时的调用(例如日志记录等),提供了众多便捷的方法对日期对象操作。

1 格式化输出

String dateStr = "2021-04-21 01:02:03";
Date date = DateUtil.parse(dateStr);

//结果 2021/04/21
String format = DateUtil.format(date, "yyyy/MM/dd");

//常用格式的格式化,结果:2021-04-21
String formatDate = DateUtil.formatDate(date);

//结果:2021-04-01 01:02:03
String formatDateTime = DateUtil.formatDateTime(date);

//结果:01:02:03
String formatTime = DateUtil.formatTime(date);

2 字符串转日期

  DateUtil.parse 方法会自动识别一些常用格式,包括:

(1)yyyy-MM-dd HH:mm:ss

(2)yyyy-MM-dd

(3)HH:mm:ss

(4)yyyy-MM-dd HH:mm

(5)yyyy-MM-dd HH:mm:ss.SSS

String dateStr = "2021-04-21";
Date date = DateUtil.parse(dateStr);

        我们也可以使用自定义日期格式转化:

String dateStr = "2021-04-21";
Date date = DateUtil.parse(dateStr, "yyyy-MM-dd");

3 日期时间差

        有时候我们需要计算两个日期之间的时间差(相差天数、相差小时数等等),Hutool 将此类方法封装为 between 方法:

Date startDate=DateUtil.parse("2021-04-20 02:00:00");
Date endDate=DateUtil.parse("2021
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值