0

我只是这篇文章中的答案How to convert a Data Class to ByteBuffer in Kotlin?

它按预期工作。问题是几乎所有数据类型都可以放置,除了无符号的一次。字节缓冲区有 putLong 等函数,但 putULong 没有。

任何提示将不胜感激。

亲切的问候,

连续波

4

1 回答 1

0

ULong和之间是一一对应的Long,所以可以转换ULongLong,放入缓冲区,读取时反之亦然。为方便起见,声明这些扩展函数

fun ByteBuffer.putULong(value: ULong): ByteBuffer = putLong(value.toLong())

fun ByteBuffer.getULong(): ULong = getLong().toULong()

它们可以像get/一样被调用put*()

于 2020-12-30T22:24:36.270 回答