Функция parse
Функция parse класса Period преобразует строку в формате PnYnMnDTnHnMnS или PnW в объект Period.
В параметр мы передаем строку для преобразования, которая представляет собой период в стандартном формате ISO-8601.
Импорт
import java.time.Period
Синтаксис
fun parse(text: CharSequence): Period
Пример
Преобразуем строку "P2Y3M15D" в объект Period:
val periodStr = "P2Y3M15D"
val period = Period.parse(periodStr)
println(period)
Результат выполнения кода:
String "P2Y3M15D"
Пример
Создадим период из строки "P1Y6M" и получим его компоненты:
val periodStr = "P1Y6M"
val period = Period.parse(periodStr)
val years = period.years
val months = period.months
val days = period.days
println("Years: $years, Months: $months, Days: $days")
Результат выполнения кода:
String "Years: 1, Months: 6, Days: 0"
Пример
Используем период для добавления к дате:
import java.time.LocalDate
val periodStr = "P3M2W"
val period = Period.parse(periodStr)
val date = LocalDate.of(2025, 1, 15)
val newDate = date.plus(period)
println("Original date: $date")
println("New date: $newDate")
Результат выполнения кода:
String "Original date: 2025-01-15"
String "New date: 2025-04-29"
Пример
Создадим период только из недель:
val periodStr = "P4W"
val period = Period.parse(periodStr)
println(period)
Результат выполнения кода:
String "P28D"