Метод parse

Метод parse класса DateTimeFormatter преобразует строку в объект, реализующий интерфейс TemporalAccessor. В первый параметр мы передаем строку для преобразования, во второй необязательный параметр можно передать функцию для дополнительной обработки результата.

Импорт

kotlinimport java.time.format.DateTimeFormatter

Синтаксис

kotlinfun parse(text: CharSequence): TemporalAccessor
kotlinfun parse(text: CharSequence, provider: TemporalQuery<T>): T

Пример

Преобразуем строку "2025-12-31" в объект LocalDate с использованием стандартного форматтера:

kotlinval formatter = DateTimeFormatter.ISO_LOCAL_DATE
val temporal = formatter.parse("2025-12-31")
val date = LocalDate.from(temporal)
println(date)

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

kotlinString "2025-12-31"

Пример

Используем кастомный форматтер для преобразования строки "31/12/2025":

kotlinval formatter = DateTimeFormatter.ofPattern("dd/MM/yyyy")
val temporal = formatter.parse("31/12/2025")
val date = LocalDate.from(temporal)
println(date)

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

kotlinString "2025-12-31"

Пример

Используем второй параметр для прямого преобразования в нужный тип:

kotlinval formatter = DateTimeFormatter.ofPattern("dd/MM/yyyy HH:mm")
val dateTime = formatter.parse("31/12/2025 15:30", LocalDateTime::from)
println(dateTime)

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

kotlinString "2025-12-31T15:30"

Пример

Преобразуем строку с временем "15:30:45" в объект LocalTime:

kotlinval formatter = DateTimeFormatter.ISO_LOCAL_TIME
val time = formatter.parse("15:30:45", LocalTime::from)
println(time)

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

kotlinString "15:30:45"

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

  • функцию ofPattern класса DateTimeFormatter,
    которая создает форматтер по шаблону
  • функцию parse класса LocalDate,
    которая преобразует строку в дату
  • функцию parse класса LocalDateTime,
    которая преобразует строку в дату и время