package cn.zytao.taosir.common.utils;

import java.time.Instant;
import java.time.LocalDate;
import java.time.LocalDateTime;
import java.time.LocalTime;
import java.time.ZoneId;
import java.time.ZonedDateTime;
import java.time.format.DateTimeFormatter;
import java.util.Date; public class DateTimeUtils { public static final DateTimeFormatter TIME_FORMATTER = DateTimeFormatter.ofPattern("HHmmss");
public static final DateTimeFormatter DATE_FORMATTER = DateTimeFormatter.ofPattern("yyyyMMdd");
public static final DateTimeFormatter DATETIME_FORMATTER = DateTimeFormatter.ofPattern("yyyyMMddHHmmss"); /**
* 获取当前系统时间
* @return
*/
public static LocalTime getLocalTime() {
return LocalTime.now();
} /**
* 获取当前系统日期
* @return
*/
public static LocalDate getLocalDate() {
return LocalDate.now();
} /**
* 获取当前系统日期时间
* @return
*/
public static LocalDateTime getLocalDateTime() {
return LocalDateTime.now();
} /**
* 获取当前系统时间字符串
* @return
*/
public static String getLocalTimeString() {
return LocalTime.now().format(TIME_FORMATTER);
} /**
* 获取当前系统日期字符串
* @return
*/
public static String getLocalDateString() {
return LocalDate.now().format(DATE_FORMATTER);
} /**
* 获取当前系统日期时间字符串
* @return
*/
public static String getLocalDateTimeString() {
return LocalDateTime.now().format(DATETIME_FORMATTER);
} /**
* 字符串转LocalTime
* @param time
* @return
*/
public static LocalTime string2LocalTime(String time) {
return LocalTime.parse(time, TIME_FORMATTER);
} /**
* 字符串转LocalDate
* @param date
* @return
*/
public static LocalDate string2LocalDate(String date) {
return LocalDate.parse(date, DATE_FORMATTER);
} /**
* 字符串转LocalDateTime
* @param dateTime
* @return
*/
public static LocalDateTime string2LocalDateTime(String dateTime) {
return LocalDateTime.parse(dateTime, DATETIME_FORMATTER);
} /**
* Date转LocalDateTime
* @param date
* @return
*/
public static LocalDateTime date2LocalDateTime(Date date) {
Instant instant = date.toInstant();//An instantaneous point on the time-line.(时间线上的一个瞬时点。)
ZoneId zoneId = ZoneId.systemDefault();//A time-zone ID, such as {@code Europe/Paris}.(时区)
LocalDateTime localDateTime = instant.atZone(zoneId).toLocalDateTime();
return localDateTime;
} /**
* Date转LocalDate
* @param date
* @return
*/
public static LocalDate date2LocalDate(Date date) {
Instant instant = date.toInstant();//An instantaneous point on the time-line.(时间线上的一个瞬时点。)
ZoneId zoneId = ZoneId.systemDefault();//A time-zone ID, such as {@code Europe/Paris}.(时区)
LocalDate localDate = instant.atZone(zoneId).toLocalDate();
return localDate;
} /**
* Date转LocalDate
* @param date
* @return
*/
public static LocalTime date2LocalTime(Date date) {
Instant instant = date.toInstant();//An instantaneous point on the time-line.(时间线上的一个瞬时点。)
ZoneId zoneId = ZoneId.systemDefault();//A time-zone ID, such as {@code Europe/Paris}.(时区)
LocalTime localTime = instant.atZone(zoneId).toLocalTime();
return localTime;
} /**
* LocalDateTime转换为Date
* @param localDateTime
*/
public static Date localDateTime2Date(LocalDateTime localDateTime){
ZoneId zoneId = ZoneId.systemDefault();
ZonedDateTime zdt = localDateTime.atZone(zoneId);//Combines this date-time with a time-zone to create a ZonedDateTime.
Date date = Date.from(zdt.toInstant());
return date;
}
}

自备LocalDateTime工具类的更多相关文章

  1. Java8中的LocalDateTime工具类

    网上搜索了半天都没有找到Java8的LocalDateTime的工具类,只好自己写了一个,常用功能基本都有.还在用Date的Java同道该换换了. 个人项目地址:https://github.com/ ...

  2. DateTimeFormatter LocalDateTime 工具类

    import java.text.SimpleDateFormat; import java.time.Duration; import java.time.Instant; import java. ...

  3. JAVA8的LocalDateTime使用心得和工具类

    今天做不成的事,明天也不会做好. 同学们,JAVA8出了这么久,不知道你们有没有用过它的LocalDateTime类型,还是依然用Date类型呢?其实,LocalDateTime类型给我们提供了很多便 ...

  4. java8时间工具类Localdate、LocaldateTime

    优点: 1.方便. Date 只能是日期加时间的格式,而 LocalDate .LocalTime.LocalDateTime 分别代表日期,时间,日期+时间,非常灵活.再就是后者在日期计算及格式化方 ...

  5. Java8 ,LocalDate,LocalDateTime处理日期和时间工具类,

    Java8 ,LocalDate,LocalDateTime处理日期和时间工具类 1.获取今天的日期 2.在Java 8 中获取年.月.日信息 3.在Java 8 中处理特定日期 4.在Java 8 ...

  6. 时间工具类之“ JDK1.8中 LocalDate、LocalTime、LocalDateTime、LocalDateTimeUtil四个时间工具类”

    一.使用的原因 在JDK8发布的时候,推出了LocalDate.LocalTime.LocalDateTime这个三个时间处理类,以此来弥补之前的日期时间类的不足,简化日期时间的操作. 在Java8之 ...

  7. 代码片段:基于 JDK 8 time包的时间工具类 TimeUtil

    摘要: 原创出处:www.bysocket.com 泥瓦匠BYSocket 希望转载,保留摘要,谢谢! “知识的工作者必须成为自己时间的首席执行官.” 前言 这次泥瓦匠带来的是一个好玩的基于 JDK ...

  8. JAVA 8 日期工具类

    JAVA 8 日期工具类 主题描述 JAVA中日期时间的历史 代码成果 主题描述 JAVA的日期时间一直比较混乱,本来以为joda会是巅峰,但是JAVA 8改变了我的思想.但是即便在JAVA 8面前, ...

  9. JavaSE-基础语法(二)-系统类(java.lang.*)和工具类(java.util.*)

    系统类(java.lang.*)和工具类(java.util.*) 一.系统类(java.lang.*) 这个包下包含java语言的核心类,如String.Math.System和Thread类等,使 ...

随机推荐

  1. python中的and、or 操作符

    在python中 非空 非零的数都为真 1. 其"and"操作符返回的结果是决定表达式结果的值:两边条件都为真则结果为真,有一假则为假 1) 当and两边条件为“真”时,返回的是a ...

  2. python装饰器实现登陆验证

    一: 定义有参数的装饰器 其中 CheckFileByName 是进行验证的过程 二: 登陆方法 三: 实现装饰调用

  3. 《你又怎么了我错了行了吧》【Alpha】Scrum meeting 2

    第二天 日期:2019/6/15 前言: 第2次会议在9C-405召开 进行第一天工作的检查,开始第二天工作的安排和学习 1.1 今日完成任务情况以及明天任务安排 姓名 当前阶段任务 下一阶段任务 刘 ...

  4. Eclipse中项目去除Js验证

    删除项目.project文件中的 <buildCommand>   <name>org.eclipse.wst.jsdt.core.javascriptValidator< ...

  5. valueof这个万能方法,将string转换为int或者int转换为string都可以

    private static String testString = "111"; int stringInt = Integer.valueOf(testString); Str ...

  6. fontend-githubs

    https://github.com/dypsilon/frontend-dev-bookmarks

  7. 在eclipse中关联android源代码

    1打包源代码成jar: 1 新建一个java项目 2  import  想打包的源代码文件 3 export 这个文件 : 选择java->jar file .  这里会让你选择输出路径 2 加 ...

  8. CGContext含义

    代码 含义 CGContextRef context = UIGraphicsGetCurrentContext(); 设置上下文 CGContextMoveToPoint 开始画线 CGContex ...

  9. Oracle 11G R2 用exp无法导出空表解决方法

    四.  Oracle 10g以后增加了expdp和impdp工具,用此工具也可以导出空的表 oracleexpdp/impdp 用法详解 1)  创建逻辑目录,该命令不会在操作系统创建真正的目录,最好 ...

  10. Session会在浏览器关闭后消失吗?

    转  http://blog.csdn.net/rongwenbin/article/details/51784310 Cookie的两种类型   在项目开发中我们时常将需要在客户端(浏览器)缓存的数 ...