0

我正在做一个项目,其中数据必须以二进制格式读取,但可以放入结构格式。在 java 结构中不可用。我已经以字节数组的形式发送数据。它也有一些结构。

例如

int length 
int sequence no
MessageData

MessageData MessageHeader MessageBody

MessageHeader int data1 long data2 char[] data3//2bytes char[] data4//3 bytes

MessageBody 相同

但是数据应该打包在字节数组中。

可以在 CPP 中作为

#pragma(2) //for word alignment

struct Packet{
    int length 
    int sequence no
    MessageData msgdata

}

我必须在java中实现。

为了读取数据,我正在使用Preon

但是对于写入数据,我仍然使用常规方法在字节数组中打包数据,并借助某些功能任何人都在从事同类项目或有更好的想法

4

1 回答 1

0

当前的代码库确实包含一些用于写入数据的字节,但是,它还没有完成。话虽如此,它可能适用于您当前的情况:

Codec<Packet> codec = Codecs.create(Packet.class);
Packet packet = ...;
OutputStream out = ...;
codecs.encode(packet, codec, out);
于 2011-01-26T18:01:35.203 回答