Функция parse

Функция parse класса OffsetTime преобразует строку в формате часы:минуты:секунды.наносекунды±смещение в объект OffsetTime. В первый параметр мы передаем строку для преобразования, во второй необязательный параметр можно передать форматтер для нестандартного формата времени.

Импорт

kotlinimport java.time.OffsetTime
import java.time.format.DateTimeFormatter

Синтаксис

kotlinfun parse(text: CharSequence): OffsetTime
kotlinfun parse(text: CharSequence, formatter: DateTimeFormatter): OffsetTime

Пример

Преобразуем строку "15:30:45+03:00" в объект OffsetTime:

kotlinval timeStr = "15:30:45+03:00"
val time = OffsetTime.parse(timeStr)
println(time)

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

kotlinString "15:30:45+03:00"

Пример

Используем кастомный форматтер для преобразования строки "15.30.45+0300":

kotlinval timeStr = "15.30.45+0300"
val formatter = DateTimeFormatter.ofPattern("HH.mm.ssXXXX")
val time = OffsetTime.parse(timeStr, formatter)
println(time)

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

kotlinString "15:30:45+03:00"

Пример

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

kotlinval timeStr = "09:15:30.123456789-05:00"
val time = OffsetTime.parse(timeStr)

val hour = time.hour
val minute = time.minute
val second = time.second
val nano = time.nano
val offset = time.offset

println("Hour: $hour, Minute: $minute, Second: $second, Nano: $nano, Offset: $offset")

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

kotlinString "Hour: 9, Minute: 15, Second: 30, Nano: 123456789, Offset: -05:00"

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

  • функцию of класса OffsetTime,
    которая создает время со смещением из числовых компонентов
  • функцию now класса OffsetTime,
    которая возвращает текущее время со смещением
  • функцию ofPattern класса DateTimeFormatter,
    которая создает форматтер для парсинга времени
  • класс LocalTime,
    который представляет время без смещения