Метод appendText

Метод appendText класса DateTimeFormatterBuilder добавляет текстовое поле для форматирования и парсинга даты и времени. В первый параметр мы передаем временное поле, которое хотим форматировать текстом, во второй необязательный параметр можно передать карту текстовых представлений.

Импорт

kotlinimport java.time.format.DateTimeFormatterBuilder
import java.time.temporal.ChronoField

Синтаксис

kotlinfun appendText(field: TemporalField): DateTimeFormatterBuilder
kotlinfun appendText(field: TemporalField, textLookup: Map<Long, String>): DateTimeFormatterBuilder

Пример

Создадим форматтер для отображения названия месяца текстом:

kotlinval formatter = DateTimeFormatterBuilder()
  .appendText(ChronoField.MONTH_OF_YEAR)
  .toFormatter()

val dateStr = formatter.format(java.time.LocalDate.of(2025, 12, 31))
println(dateStr)

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

kotlinString "December"

Пример

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

kotlinval dayNames = mapOf(
  1L to "Пн",
  2L to "Вт", 
  3L to "Ср",
  4L to "Чт",
  5L to "Пт",
  6L to "Сб",
  7L to "Вс"
)

val formatter = DateTimeFormatterBuilder()
  .appendText(ChronoField.DAY_OF_WEEK, dayNames)
  .toFormatter()

val dateStr = formatter.format(java.time.LocalDate.of(2025, 12, 31))
println(dateStr)

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

kotlinString "Ср"

Пример

Создадим форматтер с комбинацией числовых и текстовых полей:

kotlinval formatter = DateTimeFormatterBuilder()
  .appendValue(ChronoField.DAY_OF_MONTH)
  .appendLiteral(" ")
  .appendText(ChronoField.MONTH_OF_YEAR)
  .appendLiteral(" ")
  .appendValue(ChronoField.YEAR)
  .toFormatter()

val dateStr = formatter.format(java.time.LocalDate.of(2025, 7, 15))
println(dateStr)

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

kotlinString "15 July 2025"

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

  • метод appendPattern класса DateTimeFormatterBuilder,
    который добавляет шаблон для форматирования
  • метод appendValue класса DateTimeFormatterBuilder,
    который добавляет числовое поле
  • метод toFormatter класса DateTimeFormatterBuilder,
    который создает форматтер из билдера
  • класс DateTimeFormatter,
    который используется для форматирования даты и времени