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

Java 8 – Преобразование мгновенного в локальное время

– Java 8 – Преобразование мгновенного в локальное время

Примеры Java 8, которые покажут вам, как конвертировать из Мгновенный до LocalDateTime

1. Мгновенный ->Локальное время

java.время. LocalDateTime не имеет понятия о часовом поясе, просто укажите нулевое смещение UTC+0.

package com.mkyong.date;

import java.time.Instant;
import java.time.LocalDateTime;
import java.time.ZoneOffset;

public class InstantExample1 {

    public static void main(String[] argv) {

		// Parse a ISO 8601 Date directly
		//Instant instant = Instant.parse("2016-08-18T06:17:10.225Z");

        Instant instant = Instant.now();

        System.out.println("Instant : " + instant);

        //Convert instant to LocalDateTime, no timezone, add a zero offset / UTC+0
        LocalDateTime ldt = LocalDateTime.ofInstant(instant, ZoneOffset.UTC);

        System.out.println("LocalDateTime : " + ldt);

    }

}

Выход

Instant : 2016-08-18T06:17:10.225Z
LocalDateTime : 2016-08-18T06:17:10.225

2. Локальное время ->Мгновенное

package com.mkyong.date;

import java.time.*;

public class InstantExample2 {

    public static void main(String[] argv) {

		// Hard code a date time
        LocalDateTime dateTime = LocalDateTime.of(2016, Month.AUGUST, 18, 6, 17, 10);

        System.out.println("LocalDateTime : " + dateTime);

        // Convert LocalDateTime to Instant, UTC+0
        Instant instant = dateTime.toInstant(ZoneOffset.UTC);

        System.out.println("Instant : " + instant);

    }

}

Выход

Instant : 2016-08-18T06:17:10.225Z
LocalDateTime : 2016-08-18T06:17:10.225

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

  1. Википедия – Формат даты ISO 8601
  2. Мгновенный JavaDoc
  3. Локальное время javadoc

Оригинал: “https://mkyong.com/java8/java-convert-instant-to-localdatetime/”