[kotlin] 코틀린에서의 시간 타입 변환 함수

코틀린은 자바와 호환되는 언어로, 자바의 라이브러리와 기능을 모두 사용할 수 있습니다. 따라서 코틀린에서도 자바에서 제공하는 시간 타입 변환 함수를 사용할 수 있습니다.

  1. Date 객체를 LocalDateTime으로 변환하기 ```kotlin import java.util.Date import java.time.LocalDateTime import java.time.ZoneId

fun Date.toLocalDateTime(): LocalDateTime { return this.toInstant().atZone(ZoneId.systemDefault()).toLocalDateTime() }

위 코드는 Date 객체를 LocalDateTime으로 변환하는 확장 함수입니다. toInstant() 메서드를 사용하여 Date 객체를 Instant 객체로 변환한 후, 시스템의 기본 시간대를 사용하여 LocalDateTime으로 변환합니다.

2. LocalDateTime 객체를 Date로 변환하기
```kotlin
import java.util.Date
import java.time.LocalDateTime
import java.time.ZoneId

fun LocalDateTime.toDate(): Date {
    return Date.from(this.atZone(ZoneId.systemDefault()).toInstant())
}

위 코드는 LocalDateTime 객체를 Date로 변환하는 확장 함수입니다. atZone() 메서드를 사용하여 LocalDateTime 객체를 시스템의 기본 시간대를 사용하여 ZonedDateTime 객체로 변환한 후, toDate() 메서드를 사용하여 Date 객체로 변환합니다.

  1. 문자열을 LocalDateTime으로 변환하기 ```kotlin import java.time.LocalDateTime import java.time.format.DateTimeFormatter

fun String.toLocalDateTime(format: String): LocalDateTime { val formatter = DateTimeFormatter.ofPattern(format) return LocalDateTime.parse(this, formatter) }

위 코드는 문자열을 LocalDateTime으로 변환하는 확장 함수입니다. ofPattern() 메서드를 사용하여 원하는 형식의 DateTimeFormatter 객체를 생성한 후, parse() 메서드를 사용하여 문자열을 LocalDateTime으로 변환합니다.

4. LocalDateTime을 문자열로 변환하기
```kotlin
import java.time.LocalDateTime
import java.time.format.DateTimeFormatter

fun LocalDateTime.toString(format: String): String {
    val formatter = DateTimeFormatter.ofPattern(format)
    return this.format(formatter)
}

위 코드는 LocalDateTime을 문자열로 변환하는 확장 함수입니다. ofPattern() 메서드를 사용하여 원하는 형식의 DateTimeFormatter 객체를 생성한 후, format() 메서드를 사용하여 LocalDateTime을 문자열로 변환합니다.

코틀린에서는 자바의 라이브러리를 그대로 사용할 수 있으므로, 시간 타입 변환에 필요한 기능을 모두 사용할 수 있습니다. 자주 사용되는 시간 타입 변환 함수를 위 예시 코드와 함께 소개하였으니, 필요한 경우 이를 참고해보세요!

참고 자료