首页 > 其他分享 >LocalDateTime工具-LocalDateTimeUtil

LocalDateTime工具-LocalDateTimeUtil

时间:2024-06-14 11:45:02浏览次数:19  
标签:01 23 localDateTime LocalDateTimeUtil 2020 LocalDateTime 工具

介绍
从Hutool的5.4.x开始,Hutool加入了针对JDK8+日期API的封装,此工具类的功能包括LocalDateTime和LocalDate的解析、格式化、转换等操作。

使用

日期转换
String dateStr = "2020-01-23T12:23:56";
DateTime dt = DateUtil.parse(dateStr);

// Date对象转换为LocalDateTime
LocalDateTime of = LocalDateTimeUtil.of(dt);

// 时间戳转换为LocalDateTime
of = LocalDateTimeUtil.ofUTC(dt.getTime());
日期字符串解析
// 解析ISO时间
LocalDateTime localDateTime = LocalDateTimeUtil.parse("2020-01-23T12:23:56");

// 解析自定义格式时间
localDateTime = LocalDateTimeUtil.parse("2020-01-23", DatePattern.NORM_DATE_PATTERN);
解析同样支持LocalDate:

LocalDate localDate = LocalDateTimeUtil.parseDate("2020-01-23");

// 解析日期时间为LocalDate,时间部分舍弃
localDate = LocalDateTimeUtil.parseDate("2020-01-23T12:23:56", DateTimeFormatter.ISO_DATE_TIME);
日期格式化
LocalDateTime localDateTime = LocalDateTimeUtil.parse("2020-01-23T12:23:56");

// "2020-01-23 12:23:56"
String format = LocalDateTimeUtil.format(localDateTime, DatePattern.NORM_DATETIME_PATTERN);
日期偏移
final LocalDateTime localDateTime = LocalDateTimeUtil.parse("2020-01-23T12:23:56");

// 增加一天
// "2020-01-24T12:23:56"
LocalDateTime offset = LocalDateTimeUtil.offset(localDateTime, 1, ChronoUnit.DAYS);
如果是减少时间,offset第二个参数传负数即可:

// "2020-01-22T12:23:56"
offset = LocalDateTimeUtil.offset(localDateTime, -1, ChronoUnit.DAYS);
计算时间间隔
LocalDateTime start = LocalDateTimeUtil.parse("2019-02-02T00:00:00");
LocalDateTime end = LocalDateTimeUtil.parse("2020-02-02T00:00:00");

Duration between = LocalDateTimeUtil.between(start, end);

// 365
between.toDays();
一天的开始和结束
LocalDateTime localDateTime = LocalDateTimeUtil.parse("2020-01-23T12:23:56");

// "2020-01-23T00:00"
LocalDateTime beginOfDay = LocalDateTimeUtil.beginOfDay(localDateTime);

// "2020-01-23T23:59:59.999999999"
LocalDateTime endOfDay = LocalDateTimeUtil.endOfDay(localDateTime);

标签:01,23,localDateTime,LocalDateTimeUtil,2020,LocalDateTime,工具
From: https://www.cnblogs.com/velloLei/p/18247532

相关文章

  • java8之后为神马舍弃Date拥抱LocalDateTime
    在Java开发中,我们经常需要处理与时间和日期相关的任务。多年来,java.util.Date类一直是处理日期和时间的主要工具。然而,随着Java8的发布,我们有了更好的选择:java.time包中的LocalDateTime类。在本文中,我们将探讨为什么在现代Java开发中,推荐使用LocalDateTime而不是Date。1.不可变......
  • 能提高你的创作效率的超强AI工具:ChatMoney
    本文由ChatMoney团队出品引言在广告创意行业,创新和高效是赢得市场的关键。而我今天要分享的就是如何利用ChatMoney这款强大的人工智能工具,打破创新难题,赚取丰厚收益。让我告诉你一个小秘密,有客户曾在一个月内,利用ChatMoney创作了超过100条广告文案,涵盖了多个行业和产品。而......
  • AI工具ChatMoney:为你解决创作难题,提高你的创作效率
    本文由ChatMoney团队出品引言在广告创意行业,创新和高效是赢得市场的关键。而我今天要分享的就是如何利用ChatMoney这款强大的人工智能工具,打破创新难题,赚取丰厚收益。让我告诉你一个小秘密,有客户曾在一个月内,利用ChatMoney创作了超过100条广告文案,涵盖了多个行业和产品。而......
  • 全面评估:满足信创等国产化诉求的6大项目管理工具
    满足国产化诉求的6款项目管理系统:PingCode、Worktile、Teambition、禅道、华为云DevCloud、Tapd。国产项目管理软件以其定制化高、适应本土市场的优势,正成为越来越多企业的选择。本文将探讨几款优秀的国产项目管理工具,帮助您找到提升团队效率的最佳解决方案。一、国产化的具......
  • 密码管理工具Buttercup
     如果你在寻找一款优先考虑本地使用的密码管理器,那么Buttercup 就是一个针对macOS、Linux和Windows的理想选择。如果你不需要云同步功能,但希望寻找一款与KeePass用户体验不同的密码管理器,那么Buttercup将是一个好的替代品。这是一个带有简洁用户界面的跨平台开源密......
  • 重学java 70.IO流 Commons-io工具包
    所有人都不看好你,可你偏偏最争气                            ——24.6.14一、介绍        IO技术开发中,代码量很大,而且代码的重复率较高。如果我们要遍历目录,拷贝自录就需要使用方法的递归调用,也增大了程序的复......
  • 让AI知识触手可及——欢迎访问AIDOCZH.COM AI工具中文文档网站!
    让AI知识触手可及——欢迎访问AIDOCZH.COMAI工具中文文档网站!文章目录让AI知识触手可及——欢迎访问AIDOCZH.COMAI工具中文文档网站!一、网址二、已有工具1、LangChain2、Ollama3、DSPy4、Milvus5、Pycaret6、CrewAI三、后续计划四、建站起因无、展望未来在......
  • 蓝牙BLE上位机工具开发理论线索梳理_1.Win32设备(Windows 属性系统)
    1.Windows属性系统     Windows属性系统是一个可扩展的数据定义读/写系统,它提供一种统一的方式来表达有关Shell项的元数据。WindowsVista及更高版本中的Windows属性系统使你能够存储和检索Shell项的元数据。Shell项是任何单个内容,例如文件、文件夹、电......
  • 蓝牙BLE上位机工具开发理论线索梳理_3.WINRT Devices设备相关
    1.WINRT关于Devices设备相关的命名空间    关于WINRT科以参考下面这篇博文学习理解。以下列出Devices设备相关的API命名空间。理解WinRT-厚积薄发-C++博客Windows.Devices此命名空间提供对低级别设备提供程序的访问,包括ADC、GPIO、I2 C、PWM和SPI。Windows.......
  • 日拱一卒之微信小程序自动化辅助渗透工具
    本文转载自:https://mp.weixin.qq.com/s/ZS-aDC3sipHQ0o2txRzwNA注:听朋友说,这种方法可能导致被封号,用的师傅们注意下这个风险。本文仅做技术交流,如有违法行为,本文作者概不负责。配置文件功能介绍tools:#是否开启请求接口asyncio_http_tf:False#小程序结果保存......