我想发送bytes
的array
,具有6个字段(char, boolean[], char, byte[], int, and byte)
。每个字段都有一个定义的大小,因此bytes
的array
必须具有与5个字段之和相同的大小限制。
我的问题是:数字序列化uid增加了我的bytes
array
发送的最终大小?(如果答案是肯定的,我必须找到另一种方法来转换bytes
的array
)
谢谢。
快速回答,是的默认的Java序列化机制确实在它输出的字节中包含串行版本id(并期望在它读取它时返回)。完整的细节在这里http://www.javaworld.com/community/node/2915,它也包括其他东西。
您可以通过实现Externalizable来覆盖此行为,参见http://geekexplains.blogspot.co.uk/2008/05/externalizable-in-java-what-is-it-used.html。
您可能更喜欢使用像protobuf或msgpack这样的库。