gpt4 book ai didi

time - 如何在Kotlin中将UNIX时间戳转换为UInt8数组?

转载 作者:行者123 更新时间:2023-12-02 13:36:32 75 4
gpt4 key购买 nike

我需要在Kotlin中将UNIX时间戳转换为ByteArray。问题是,当我使用下面的代码执行此操作时,我得到的结果类似于C1F38E05(hex),比当前纪元时间高得多。

internal fun Int.toByteArray(): ByteArray {
return byteArrayOf(
this.ushr(24).toByte(),
this.ushr(16).toByte(),
this.ushr(8).toByte(),
this.toByte()
)
}

val timeUTC = System.currentTimeMillis().toInt().toByteArray()

正确的做法是什么?

最佳答案

如果需要32位值,则需要将时间转换为秒。

fun Int.toByteArray() = byteArrayOf(
this.toByte(),
(this ushr 8).toByte(),
(this ushr 16).toByte(),
(this ushr 24).toByte()
)

val timeUTC = (System.currentTimeMillis() / 1000).toInt().toByteArray()

关于time - 如何在Kotlin中将UNIX时间戳转换为UInt8数组?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55389334/

75 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com