zoukankan      html  css  js  c++  java
  • Java8中 Date和LocalDateTime的相互转换

    一.在Java 8中将Date转换为LocalDateTime

    方法1:

    将Date转换为LocalDatetime,我们可以使用以下方法:

    1.从日期获取ZonedDateTime并使用其方法toLocalDateTime()获取LocalDateTime
    2.使用LocalDateTime的Instant()工厂方法

    示例:

    package insping; 
    import java.time.Instant; 
    import java.time.LocalDateTime; 
    import java.time.ZoneId; 
    import java.util.Date; 
    public class Test { 
        public static void main(String[] args) 
        { 
            Date date = new Date(); 
            Instant instant = date.toInstant(); 
            ZoneId zoneId = ZoneId.systemDefault(); 
            LocalDateTime localDateTime = instant.atZone(zoneId).toLocalDateTime(); 
            System.out.println("Date = " + date); 
            System.out.println("LocalDateTime = " + localDateTime); 
        } 
    }

    结果:

    Date = Fri Jun 16 15:35:26 CST 2017
    LocalDateTime = 2017-06-16T15:35:26.970

    方法2:

    我们也可以使用LocalDateTime的FactoryInput()方法使用系统的默认时区。

    LocalDateTime localDateTime = LocalDateTime.ofInstant(date.toInstant(), zoneId);

    二.在Java 8中将LocalDateTime转换为Date


    要将LocalDateTime转换回java.util.Date,我们可以使用以下步骤:

    1.使用atZone()方法将LocalDateTime转换为ZonedDateTime
    2.将ZonedDateTime转换为Instant,并从中获取Date

    示例:

    package insping;
    import java.time.LocalDateTime; 
    import java.time.ZoneId; 
    import java.time.ZonedDateTime; 
    import java.util.Date; 
    public class Test { 
      public static void main(String[] args) { 
        ZoneId zoneId = ZoneId.systemDefault(); 
        LocalDateTime localDateTime = LocalDateTime.now(); 
        ZonedDateTime zdt = localDateTime.atZone(zoneId);
        Date date = Date.from(zdt.toInstant()); 
        System.out.println("LocalDateTime = " + localDateTime);
        System.out.println("Date = " + date);
      }
    }

    结果:

    LocalDateTime = 2017-06-16T15:38:48.580
    Date = Fri Jun 16 15:38:48 CST 2017

    转自:https://blog.csdn.net/hspingcc/article/details/73332380

     
  • 相关阅读:
    NoSQL 数据库中的 CAP 理论
    JVM 相关概念
    Servlet 生命周期
    RabbitMQ
    消息队列概述
    05.类加载器深入解析及重要特性剖析
    LINUX笔记3(用户管理)
    LINUX笔记2(创建和编辑文本)
    修改httpd端口后,服务不能启动。
    LINUX笔记1(命令行和目录结构)
  • 原文地址:https://www.cnblogs.com/zt007/p/9791606.html
Copyright © 2011-2022 走看看