gpt4 book ai didi

java - 将字节数组分解为不同的数据类型?

转载 作者:搜寻专家 更新时间:2023-10-31 19:35:08 25 4
gpt4 key购买 nike

我正在使用 Naga 库从套接字读取数据,套接字生成 byte[] 数组,这些数组通过委托(delegate)函数接收。

我的问题是,如何在知道对齐方式的情况下将此字节数组转换为特定数据类型?

例如,如果字节数组包含以下数据,则顺序为:

| byte | byte | short | byte | int | int |

如何提取这些数据类型(小尾数法)?

最佳答案

我建议您看一下 ByteBuffer 类(特别是 ByteBuffer.wrap 方法和各种 getXxx 方法)。

示例类:

class Packet {

byte field1;
byte field2;
short field3;
byte field4;
int field5;
int field6;

public Packet(byte[] data) {
ByteBuffer buf = ByteBuffer.wrap(data)
.order(ByteOrder.LITTLE_ENDIAN);

field1 = buf.get();
field2 = buf.get();
field3 = buf.getShort();
field4 = buf.get();
field5 = buf.getInt();
field6 = buf.getInt();
}
}

关于java - 将字节数组分解为不同的数据类型?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6899720/

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