开发者

Java中Date、LocalDate、LocalDateTime、LocalTime、时间戳之间的相互转换代码

开发者 https://www.devze.com 2025-04-13 10:24 出处:网络 作者: 一个默默小透明
目录一、Date转LocalDateTime二、Date转LocalDate三、LocalDateTime转LocalDate四、LocalDateTime转LocalTime五、LocalDateTime转Date六、LocalDate转Date七、时间戳转LocalDateTime总结一、Date转LocalDateTime
目录
  • 一、Date转LocalDateTime
  • 二、Date转LocalDate
  • 三、LocalDateTime转LocalDate
  • 四、LocalDateTime转LocalTime
  • 五、LocalDateTime转Date
  • 六、LocalDate转Date
  • 七、时间戳转LocalDateTime
  • 总结

一、Date转LocalDateTime

    @Test
    public void test06(){
        SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
        // Date
        Date date = new Date();
      编程客栈  System.out.println("Date\t" + sdf.format(date));

        // Date 转 LocalDateTime
        DateTimeFormatter dtf = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss");
        LocalDateTime dateToLocalDateTime = date.toInstant().atZone(ZoneId.systemDefault()).toLocalDateTime();
        System.out.println("Date To LocalDateTime\t" + dtf.format(dateToLocalDateTime));
    }

二、Date转LocalDate

    @Test
    public void test07(){
        SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
        // Date
        Date date = new Date();
        System.out.println("Date\t" + sdf.format(date));

        // Date 转 LocalDate
        // 注意 LocalDate 只能有年月日,格式化日期不能有时分秒,否则会报错
        DateTimeFormatter dtf = DateTimeFormatter.ofPattern("yyyy-MM-dd");
        LocalDate dateToLocalDate = date.toInstant().atZone(ZoneId.systemDefault()).toLocalDate();
        System.out.println("Date To LocalDate\t" + dtandroidf.format(dateToLocalDate));
    }

三、LocalDateTime转LocalDate

    @Test
    public void test08(){
        // LocalDateTime 转 LocalDate
        DateTimeFormatter dtf = DateTimeFormatter.ofPattern("yyyy-MM-dd");
        LocalDate localDateTimeToLocalDate = LocalDateTime.now().toLocalDate();
        System.out.println("LocalDateTime To LocalDate\t" + dtf.format(localDateTimeToLocalDate));
    }

四、LocalDateTime转LocalTime

    @Test
    public void test09(){
        // LocalDateTime 转 LocalTime
        // 注意 LocalTime 只能有时分秒,格式化日期不能有年月日,否则会报错
        DateTimeFormatter dtf = DateTimeFormatter.ofPattern("HH:mm:ss");
        LocalTime localDateTimeToLwww.devze.comocalTime = LocYmShOvSalDateTime.now().toLocalTime()php;
        System.out.println("LocalDateTime To LocalTime\t" + dtf.format(localDateTimeToLocalTime));
    }

五、LocalDateTime转Date

    @Test
    public void test10(){
        SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
        // LocalDateTime 转 Date
        ZoneId zoneId = ZoneId.systemDefault();
        Date localDateTimeToDate = Date.from(LocalDateTime.now().atZone(zoneId).toInstant());
        System.out.println("LocalDateTime To Date\t" + sdf.format(localDateTimeToDate));
    }

六、LocalDate转Date

    @Test
    public void test11(){
        SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
        // LocalDate 转 Date
        Date LocalDateToDate = Date.from(LocalDate.now().atStartOfDay(ZoneId.systemDefault()).toInstant());
        System.out.println("LocalDate To Date\t" + sdf.format(LocalDateToDate));
    }

七、时间戳转LocalDateTime

    @Test
    public void test12(){
        DateTimeFormatter dtf = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss");
        // 时间戳 转 LocalDateTime
        Long timestamp = LocalDateTime.now().toInstant(ZoneOffset.of("+8")).toEpochMilli();
        LocalDateTime time2 = LocalDateTime.ofEpochSecond(timestamp/1000,0,ZoneOffset.ofHours(8));
        System.out.println("时间戳 To LocalDateTime\t" + dtf.format(time2));
    }

总结

到此这篇关于Java中Date、LocalDate、LocalDateTime、LocalTime、时间戳之间的相互转换代码的文章就介绍到这了,更多相关Java中日期时间相互转换内容请搜索编程客栈(www.devze.com)以前的文章或继续浏览下面的相关文章希望大家以后多多支持编程客栈(www.devze.com)!

0

精彩评论

暂无评论...
验证码 换一张
取 消

关注公众号