gpt4 book ai didi

Java 将 long 转换为 4 字节

转载 作者:塔克拉玛干 更新时间:2023-11-01 21:40:37 25 4
gpt4 key购买 nike

如何将 long 转换为 4 字节?我从 C 程序接收到一些输出,它使用 unsigned long。我需要读取此输出并将其转换为 4 个字节。

然而,java 使用 64 位的 signed long。有什么办法可以进行这种转换吗?

最佳答案

要读取 4 个字节作为无符号的 32 位值,假设它是小端,最简单的做法是使用 ByteBuffer

byte[] bytes = { 1,2,3,4 };
long l = ByteBuffer.wrap(bytes)
.order(ByteOrder.LITTLE_ENDIAN).getInt() & 0xFFFFFFFFL;

虽然 l 可以是带符号的 64 位值,但它只会介于 0 和 2^^32-1 之间,这是无符号 32 位值的范围。

关于Java 将 long 转换为 4 字节,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14108121/

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