Метод getZone
Метод getZone
класса DateTimeFormatter
возвращает объект ZoneId
, представляющий часовой пояс, ассоциированный с данным форматтером.
Если часовой пояс не был установлен явно, метод вернет null.
Импорт
import java.time.format.DateTimeFormatter
import java.time.ZoneId
Синтаксис
fun getZone(): ZoneId?
Пример
Создадим форматтер с часовым поясом и получим его:
val formatter = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm")
.withZone(ZoneId.of("Europe/London"))
val zone = formatter.getZone()
println(zone)
Результат выполнения кода:
String "Europe/London"
Пример
Проверим возвращаемое значение для форматтера без установленного часового пояса:
val formatter = DateTimeFormatter.ofPattern("yyyy-MM-dd")
val zone = formatter.getZone()
println(zone)
Результат выполнения кода:
null
Пример
Используем полученный часовой пояс для создания отформатированной даты:
import java.time.ZonedDateTime
val formatter = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm z")
.withZone(ZoneId.of("America/New_York"))
val zone = formatter.getZone()
val now = ZonedDateTime.now(zone)
val formatted = now.format(formatter)
println(formatted)
Результат выполнения кода:
String "2025-09-10 10:30 EDT"
Смотрите также
-
метод
withZone
классаDateTimeFormatter
,
который устанавливает часовой пояс для форматтера -
класс
ZoneId
,
который представляет идентификатор часового пояса -
метод
getZone
классаZonedDateTime
,
который возвращает часовой пояс даты-времени -
метод
getZone
классаClock
,
который возвращает часовой пояс часов