Функция toLocalDateTime

Функция toLocalDateTime класса ZonedDateTime преобразует объект с информацией о часовом поясе в объект LocalDateTime, удаляя информацию о часовом поясе и смещении. Функция не принимает параметров и возвращает новый объект LocalDateTime с теми же значениями даты и времени.

Импорт

kotlinimport java.time.ZonedDateTime
import java.time.LocalDateTime

Синтаксис

kotlinfun toLocalDateTime(): LocalDateTime

Пример

Преобразуем объект ZonedDateTime в LocalDateTime:

kotlinval zonedDateTime = ZonedDateTime.parse("2025-07-15T10:30:45+03:00[Europe/Moscow]")
val localDateTime = zonedDateTime.toLocalDateTime()
println(localDateTime)

Результат выполнения кода:

kotlinString "2025-07-15T10:30:45"

Пример

Сравним исходный ZonedDateTime и полученный LocalDateTime:

kotlinval zdt = ZonedDateTime.parse("2025-12-31T23:59:59-05:00[America/New_York]")
val ldt = zdt.toLocalDateTime()

println("Original ZonedDateTime: $zdt")
println("Converted LocalDateTime: $ldt")

Результат выполнения кода:

kotlinString "Original ZonedDateTime: 2025-12-31T23:59:59-05:00[America/New_York]"
String "Converted LocalDateTime: 2025-12-31T23:59:59"

Пример

Получим отдельные компоненты даты и времени после преобразования:

kotlinval zoned = ZonedDateTime.parse("2025-03-20T15:45:30+02:00[Europe/Paris]")
val local = zoned.toLocalDateTime()

val year = local.year
val month = local.monthValue
val day = local.dayOfMonth
val hour = local.hour
val minute = local.minute

println("Date: $year-$month-$day, Time: $hour:$minute")

Результат выполнения кода:

kotlinString "Date: 2025-3-20, Time: 15:45"

Смотрите также

  • функцию toLocalDate класса ZonedDateTime,
    которая преобразует в дату без времени
  • функцию toLocalTime класса ZonedDateTime,
    которая преобразует во время без даты
  • функцию atZone класса LocalDateTime,
    которая добавляет часовой пояс к LocalDateTime
  • класс LocalDateTime,
    который представляет дату и время без часового пояса