source

LocalDate를 Instant로 변환하는 방법

manycodes 2022. 11. 26. 13:57
반응형

LocalDate를 Instant로 변환하는 방법

자바8의 새로운 DateTime API를 사용하고 있습니다.

LocalDate를 Instant로 변환하는 방법에 대해서는 예외입니다.

LocalDate date = LocalDate.of(2012, 2, 2);
Instant instant = Instant.from(date);

왜 그랬는지 이해가 안 돼요

이를 인스턴스로 변환하려면 LocalDateTime 인스턴스가 필요합니다.다음은 예를 제시하겠습니다.

LocalDate.now().atStartOfDay().toInstant(ZoneOffset.UTC)

Instantclass는 타임라인의 순간 포인트를 나타냅니다.와의 변환LocalDate에는 타임존이 필요합니다.다른 일부 날짜 및 시간 라이브러리와 달리 JSR-310은 자동으로 시간대를 선택하지 않으므로 시간대를 제공해야 합니다.

LocalDate date = LocalDate.now();
Instant instant = date.atStartOfDay(ZoneId.systemDefault()).toInstant();

다음 예에서는 JVM의 기본 시간대를 사용합니다.ZoneId.systemDefault()- 변환을 수행합니다.관련 질문에 대한 자세한 답변은 여기를 참조하십시오.


업데이트: 승인된 답변은 다음과 같습니다.LocalDateTime::toInstant(ZoneOffset)그것은 오직 받아들인다ZoneOffset이 답변에서는LocalDate::atStartOfDay(ZoneId)어떤 것이든 받아들인다ZoneId따라서 이 답변은 일반적으로 더 유용합니다(그리고 아마도 받아들여질 것입니다).

추신. 저는 API의 주 제작자였습니다.

언급URL : https://stackoverflow.com/questions/23215299/how-to-convert-a-localdate-to-an-instant

반응형