Метод appendZoneOrOffsetId
Метод appendZoneOrOffsetId класса DateTimeFormatterBuilder добавляет шаблон для обработки идентификатора часового пояса ZoneId или смещения ZoneOffset. Этот метод позволяет парсить и форматировать строковые представления временных зон в различных форматах.
Импорт
import java.time.format.DateTimeFormatterBuilder
Синтаксис
fun appendZoneOrOffsetId(): DateTimeFormatterBuilder
Пример
Создадим форматтер с поддержкой зоны и отформатируем дату-время:
import java.time.ZonedDateTime
import java.time.ZoneId
import java.time.format.DateTimeFormatter
val builder = DateTimeFormatterBuilder()
val formatter = builder.appendZoneOrOffsetId().toFormatter()
val zonedDateTime = ZonedDateTime.of(2025, 12, 31, 15, 30, 0, 0, ZoneId.of("Europe/Moscow"))
val result = zonedDateTime.format(formatter)
println(result)
Результат выполнения кода:
String "Europe/Moscow"
Пример
Парсинг строки с идентификатором зоны:
import java.time.ZonedDateTime
import java.time.format.DateTimeFormatter
val builder = DateTimeFormatterBuilder()
val formatter = builder.appendZoneOrOffsetId().toFormatter()
val text = "2025-12-31T15:30:00Europe/Moscow"
val parsed = ZonedDateTime.parse(text, formatter)
println(parsed)
Результат выполнения кода:
String "2025-12-31T15:30+03:00[Europe/Moscow]"
Пример
Использование с другими компонентами формата:
import java.time.ZonedDateTime
import java.time.ZoneId
import java.time.format.DateTimeFormatter
val builder = DateTimeFormatterBuilder()
builder.appendPattern("yyyy-MM-dd HH:mm:ss ")
builder.appendZoneOrOffsetId()
val formatter = builder.toFormatter()
val zonedDateTime = ZonedDateTime.of(2025, 12, 31, 15, 30, 0, 0, ZoneId.of("UTC"))
val result = zonedDateTime.format(formatter)
println(result)
Результат выполнения кода:
String "2025-12-31 15:30:00 UTC"
Смотрите также
-
метод
appendZoneIdклассаDateTimeFormatterBuilder,
который добавляет только идентификатор зоны -
метод
appendOffsetклассаDateTimeFormatterBuilder,
который добавляет только смещение времени -
класс
ZoneId,
который представляет идентификатор часовой зоны -
класс
ZoneOffset,
который представляет смещение времени от UTC