Функция now

Функция now класса OffsetDateTime возвращает текущие дату и время со смещением от UTC/Greenwich, полученные из системных часов. В необязательный параметр можно передать объект ZoneId для получения времени в конкретном часовом поясе или объект Clock для тестирования.

Импорт

kotlinimport java.time.OffsetDateTime
import java.time.ZoneId
import java.time.Clock

Синтаксис

kotlinfun now(): OffsetDateTime
kotlinfun now(zone: ZoneId): OffsetDateTime
kotlinfun now(clock: Clock): OffsetDateTime

Пример

Получим текущие дату и время со смещением в системном часовом поясе:

kotlinval currentDateTime = OffsetDateTime.now()
println(currentDateTime)

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

kotlinString "2025-09-10T14:30:45.123+03:00"

Пример

Получим текущие дату и время со смещением в конкретном часовом поясе:

kotlinval tokyoZone = ZoneId.of("Asia/Tokyo")
val tokyoDateTime = OffsetDateTime.now(tokyoZone)
println(tokyoDateTime)

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

kotlinString "2025-09-10T20:30:45.123+09:00"

Пример

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

kotlinval fixedClock = Clock.fixed(
  Instant.parse("2025-12-31T23:59:59.999Z"),
  ZoneId.of("UTC")
)
val fixedDateTime = OffsetDateTime.now(fixedClock)
println(fixedDateTime)

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

kotlinString "2025-12-31T23:59:59.999Z"

Пример

Получим отдельные компоненты даты и времени:

kotlinval current = OffsetDateTime.now()

val year = current.year
val month = current.monthValue
val day = current.dayOfMonth
val hour = current.hour
val minute = current.minute
val offset = current.offset

println("Year: $year, Month: $month, Day: $day")
println("Hour: $hour, Minute: $minute")
println("Offset: $offset")

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

kotlinString "Year: 2025, Month: 9, Day: 10"
String "Hour: 14, Minute: 30"
String "Offset: +03:00"

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

  • функцию now класса LocalDateTime,
    которая возвращает текущие дату и время без смещения
  • функцию now класса ZonedDateTime,
    которая возвращает текущие дату и время с информацией о часовом поясе
  • функцию of класса OffsetDateTime,
    которая создает дату и время со смещением из компонентов
  • класс ZoneOffset,
    который представляет смещение от UTC/Greenwich