Метод appendZoneId

Метод appendZoneId класса DateTimeFormatterBuilder добавляет идентификатор часового пояса в форматтер даты и времени. Этот метод позволяет включать информацию о часовом поясе в отформатированную строку и корректно парсить строки с указанием зоны.

Импорт

kotlinimport java.time.format.DateTimeFormatterBuilder

Синтаксис

kotlinfun appendZoneId(): DateTimeFormatterBuilder

Пример

Создадим форматтер с идентификатором часового пояса и отформатируем текущее время:

kotlinimport java.time.ZonedDateTime
import java.time.ZoneId
import java.time.format.DateTimeFormatter

val formatter = DateTimeFormatterBuilder()
  .appendPattern("yyyy-MM-dd HH:mm:ss ")
  .appendZoneId()
  .toFormatter()

val zonedDateTime = ZonedDateTime.now(ZoneId.of("Europe/Moscow"))
val result = zonedDateTime.format(formatter)
println(result)

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

kotlinString "2025-12-31 15:30:45 Europe/Moscow"

Пример

Распарсим строку с идентификатором часового пояса:

kotlinval dateStr = "2025-07-15 10:30:00 America/New_York"
val formatter = DateTimeFormatterBuilder()
  .appendPattern("yyyy-MM-dd HH:mm:ss ")
  .appendZoneId()
  .toFormatter()

val zonedDateTime = ZonedDateTime.parse(dateStr, formatter)
val zone = zonedDateTime.zone
println("Zone: $zone")

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

kotlinString "Zone: America/New_York"

Пример

Используем несколько методов DateTimeFormatterBuilder для сложного форматирования:

kotlinval formatter = DateTimeFormatterBuilder()
  .appendPattern("dd.MM.yyyy ")
  .appendPattern("HH:mm ")
  .appendZoneId()
  .toFormatter()

val zonedDateTime = ZonedDateTime.now(ZoneId.of("Asia/Tokyo"))
val result = zonedDateTime.format(formatter)
println(result)

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

kotlinString "31.12.2025 18:45 Asia/Tokyo"

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

  • метод appendPattern класса DateTimeFormatterBuilder,
    который добавляет шаблон форматирования
  • метод appendOffset класса DateTimeFormatterBuilder,
    который добавляет смещение часового пояса
  • класс ZonedDateTime,
    который представляет дату и время с часовым поясом
  • класс ZoneId,
    который представляет идентификатор часового пояса