Рубрики
Без рубрики

Java 8 – Преобразование миллисекунд времени эпохи в локальную дату или локальное время

– Java 8 – Преобразование миллисекунд времени эпохи в локальную дату или локальное время

В Java 8 мы можем использовать Instant.ofepochmilli().в зоне() для преобразования времени эпохи в миллисекундах обратно в Локальные данные или Локальное время

Эпоха времени до Локальная дата

LocalDate ld = Instant.ofEpochMilli(epoch).atZone(ZoneId.systemDefault()).toLocalDate();

Время эпохи до LocalDateTime

LocalDateTime ldt = Instant.ofEpochMilli(epoch).atZone(ZoneId.systemDefault()).toLocalDateTime();

P.S Время эпохи – это количество секунд, прошедших с 0:00:00 UTC 1 января 1970 года

1. Время эпохи -> Локальная дата||Локальное время

Получите текущее время эпохи в длинном значении и преобразуйте его обратно в Локальную дату или LocalDateTime .

package com.mkyong.java8;

import java.time.Instant;
import java.time.LocalDate;
import java.time.LocalDateTime;
import java.time.ZoneId;

public class Java8ConvertEpoch {

    public static void main(String[] args) {

        long epoch = Instant.now().toEpochMilli();
        System.out.println(epoch);

        LocalDate ld = Instant.ofEpochMilli(epoch)
                .atZone(ZoneId.systemDefault()).toLocalDate();
        System.out.println(ld);

        LocalDateTime ldt = Instant.ofEpochMilli(epoch)
                .atZone(ZoneId.systemDefault()).toLocalDateTime();
        System.out.println(ldt);

    }

}



Выход

1581420629955
2020-02-11
2020-02-11T19:30:29.955

Рекомендации

Оригинал: “https://mkyong.com/java8/java-8-convert-epoch-time-milliseconds-to-localdate-or-localdatetime/”