Функция getRules

Функция getRules класса ZoneRulesProvider возвращает правила временной зоны в виде объекта ZoneRules по указанному идентификатору зоны. В параметр мы передаем строковый идентификатор временной зоны, для которой нужно получить правила.

Импорт

kotlinimport java.time.zone.ZoneRulesProvider

Синтаксис

kotlinfun getRules(zoneId: String, forCaching: Boolean): ZoneRules
kotlinfun getRules(zoneId: String, forCaching: Boolean): ZoneRules?

Пример

Получим правила для временной зоны "Europe/London":

kotlinval rules = ZoneRulesProvider.getRules("Europe/London", true)
val isFixed = rules.isFixedOffset
println("Is fixed offset: $isFixed")

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

kotlinString "Is fixed offset: false"

Пример

Проверим поддержку летнего времени для зоны "America/New_York":

kotlinval rules = ZoneRulesProvider.getRules("America/New_York", false)
hasDaylightSavings = rules.isDaylightSavings(java.time.Instant.now())
println("Has daylight savings: $hasDaylightSavings")

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

kotlinString "Has daylight savings: true"

Пример

Получим стандартное смещение для UTC зоны:

kotlinval rules = ZoneRulesProvider.getRules("UTC", true)
val offset = rules.getStandardOffset(java.time.Instant.now())
println("UTC offset: $offset")

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

kotlinString "UTC offset: Z"

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

  • функцию getRules класса ZoneId,
    которая возвращает правила для объекта ZoneId
  • функцию getAvailableZoneIds класса ZoneRulesProvider,
    которая возвращает список доступных идентификаторов зон
  • класс ZoneRules,
    который представляет правила временной зоны
  • класс ZonedDateTime,
    который представляет дату и время с временной зоной