В Kotlin есть несколько способов преобразовать время в миллисекунды. Один из них - использование класса Calendar
.
import java.util.Calendar fun main() { val calendar = Calendar.getInstance() // Установка времени в calendar calendar.set(Calendar.HOUR_OF_DAY, 10) calendar.set(Calendar.MINUTE, 30) calendar.set(Calendar.SECOND, 0) calendar.set(Calendar.MILLISECOND, 0) // Получение времени в миллисекундах val timeInMillis = calendar.timeInMillis println("Время в миллисекундах: $timeInMillis") }
В этом коде мы сначала создаем экземпляр Calendar
с помощью Calendar.getInstance()
. Затем мы устанавливаем желаемое время с помощью методов set()
. В данном случае мы устанавливаем часы на 10, минуты на 30, секунды на 0 и миллисекунды на 0.
После этого мы можем получить время в миллисекундах с помощью метода timeInMillis
.
Альтернативный способ - использование LocalDateTime
из пакета java.time
.
import java.time.LocalDateTime import java.time.ZoneOffset fun main() { val localDateTime = LocalDateTime.of(2021, 9, 15, 10, 30) val timeInMillis = localDateTime.toInstant(ZoneOffset.UTC).toEpochMilli() println("Время в миллисекундах: $timeInMillis") }
Здесь мы создаем экземпляр LocalDateTime
с помощью метода of()
, указывая год, месяц, день, час и минуту. Затем мы преобразуем LocalDateTime
в Instant
с помощью метода toInstant()
, указывая смещение часового пояса (ZoneOffset.UTC
). Наконец, мы преобразуем Instant
в миллисекунды, вызывая метод toEpochMilli()
.
Оба эти способа преобразуют время в миллисекунды, но используют разные API. Выбор зависит от ваших предпочтений и требований проекта.