java.util.Date를 java.time의 Instant, OffsetDateTime 또는 ZonedDateTime으로 변환
최신 java.time 프레임워크로 마이그레이션 , 레거시 java.util.Date 객체를 적절한 java.time 유형으로 변환하는 방법을 아는 것이 중요합니다. 동등한 항목에 대한 요약은 다음과 같습니다.
java.util.Date에서 Instant
둘 다 UTC의 순간을 나타내므로 변환이 간단합니다.
<code class="java">Instant instant = myUtilDate.toInstant(); java.util.Date myUtilDate = java.util.Date.from(instant);</code>
java.util.Date를 java.time의 OffsetDateTime 또는 ZonedDateTime으로
이러한 유형은 시간대 정보를 포함하므로 레거시 Date에서 시간대를 추출해야 합니다.
<code class="java">// If the legacy date is a GregorianCalendar (which can hold time zone info) if (myUtilCalendar instanceof GregorianCalendar) { GregorianCalendar gregCal = (GregorianCalendar) myUtilCalendar; ZonedDateTime zdt = gregCal.toZonedDateTime(); // ZonedDateTime with time zone java.util.Calendar myUtilCalendar = java.util.GregorianCalendar.from(zdt); }</code>
추가 변환 매핑
Legacy Type | java.time Equivalent | Additional Notes |
---|---|---|
java.util.Calendar | Instant | Converts to the start of the day in UTC |
java.util.GregorianCalendar | ZonedDateTime | Retains time zone information |
java.util.LocalDate | ZonedDateTime | Requires a time zone to determine the date |
java.util.LocalTime | Instant | Converts to the start of the day in UTC |
java.util.LocalDateTime | ZonedDateTime | Requires a time zone to determine the date and time |
중요 고려 사항
위 내용은 java.util.Date를 java.time\의 Instant, OffsetDateTime 또는 ZonedDateTime으로 어떻게 변환합니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!