Функция parse

Функция parse класса OffsetDateTime преобразует строку в формате год-месяц-деньTчасы:минуты:секунды.долисекунд±смещение в объект OffsetDateTime. В первый параметр мы передаем строку для преобразования, во второй необязательный параметр можно передать форматтер для нестандартного формата даты-времени со смещением.

Импорт

kotlinimport java.time.OffsetDateTime

Синтаксис

kotlinfun parse(text: CharSequence): OffsetDateTime
kotlinfun parse(text: CharSequence, formatter: DateTimeFormatter): OffsetDateTime

Пример

Преобразуем строку "2025-12-31T23:59:59+03:00" в объект OffsetDateTime:

kotlinval dateTimeStr = "2025-12-31T23:59:59+03:00"
val dateTime = OffsetDateTime.parse(dateTimeStr)
println(dateTime)

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

kotlinString "2025-12-31T23:59:59+03:00"

Пример

Используем кастомный форматтер для преобразования строки "31.12.2025 23:59:59 +0300":

kotlinimport java.time.format.DateTimeFormatter

val dateTimeStr = "31.12.2025 23:59:59 +0300"
val formatter = DateTimeFormatter.ofPattern("dd.MM.uuuu HH:mm:ss xx")
val dateTime = OffsetDateTime.parse(dateTimeStr, formatter)
println(dateTime)

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

kotlinString "2025-12-31T23:59:59+03:00"

Пример

Получим отдельные компоненты даты-времени со смещением после парсинга:

kotlinval dateTimeStr = "2025-07-15T14:30:45+02:00"
val dateTime = OffsetDateTime.parse(dateTimeStr)

val year = dateTime.year
val month = dateTime.monthValue
val day = dateTime.dayOfMonth
val hour = dateTime.hour
val minute = dateTime.minute
val offset = dateTime.offset

println("Year: $year, Month: $month, Day: $day, Time: $hour:$minute, Offset: $offset")

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

kotlinString "Year: 2025, Month: 7, Day: 15, Time: 14:30, Offset: +02:00"

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

  • функцию of класса OffsetDateTime,
    которая создает дату-время со смещением из числовых компонентов
  • функцию now класса OffsetDateTime,
    которая возвращает текущую дату-время со смещением
  • функцию ofPattern класса DateTimeFormatter,
    которая создает форматтер для парсинга дат-времени
  • класс ZonedDateTime,
    который представляет дату и время с информацией о часовом поясе