2015-08-11 1 views
0

Учитывая ZonedDateTime в java.time package Java 8 и выше, как получить Instant?Получите `Instant` из` ZonedDateTime` в java.time

Переход в другую сторону (InstantZonedDateTime) просто:

ZonedDateTime zdt = ZonedDateTime.ofInstant(instant , zoneId) ; 

Переход от ZonedDateTimeInstant необходим для таких вещей, как преобразование в старой школы java.util.Date класса.

java.util.Date date = Date.fromInstant(instant) ; 

ответ

7

Вы можете использовать метод toInstant()по умолчанию из ChronoZonedDateTime интерфейса (который наследуется ZonedDateTime.

screenshot of documentation page for ChronoZonedDateTime class with method toInstant highlighted

+0

Спасибо! Я не видел, что имя метода, заправленные под «методы, унаследованные от ... ". –

+0

@BasilBourque Ваш браузер не поддерживает' ctrl + f' или 'cmd + f'?: P – Tom

+1

@Tom Да, мой веб-браузер действительно поддерживает * Command + F *. Найдено 70 экземпляров * Экземпляр * Я посмотрел на каждый попал в список основных методов. Дважды. Если вы посмотрите на страницы документа для 'Instant',' Date' и 'java.sql.Timestamp', вы заметите, что практически ни один из методов преобразования между типами не наследуется, они все находятся в списке основных методов. –