Метод toFormatter

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

Импорт

kotlinimport java.time.format.DateTimeFormatterBuilder

Синтаксис

kotlinfun toFormatter(): DateTimeFormatter
kotlinfun toFormatter(locale: Locale): DateTimeFormatter

Пример

Создадим кастомный форматтер для даты в формате день/месяц/год:

kotlinval builder = DateTimeFormatterBuilder()
builder.appendPattern("dd/MM/yyyy")
val formatter = builder.toFormatter()

val dateStr = "31/12/2025"
val date = LocalDate.parse(dateStr, formatter)
println(date)

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

kotlinString "2025-12-31"

Пример

Создадим форматтер с указанием локали:

kotlinimport java.util.Locale

val builder = DateTimeFormatterBuilder()
builder.appendPattern("dd MMMM yyyy")
val formatter = builder.toFormatter(Locale.ENGLISH)

val dateStr = "31 December 2025"
val date = LocalDate.parse(dateStr, formatter)
println(date)

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

kotlinString "2025-12-31"

Пример

Создадим сложный форматтер с несколькими компонентами:

kotlinval builder = DateTimeFormatterBuilder()
builder.appendValue(ChronoField.DAY_OF_MONTH, 2)
builder.appendLiteral('/')
builder.appendValue(ChronoField.MONTH_OF_YEAR, 2)
builder.appendLiteral('/')
builder.appendValue(ChronoField.YEAR, 4)
val formatter = builder.toFormatter()

val dateStr = "31/12/2025"
val date = LocalDate.parse(dateStr, formatter)
println(date)

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

kotlinString "2025-12-31"

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

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