我的 Rust bincode 库有问题。当它序列化一个向量时,它总是假设前缀长度是 8 个字节。当您始终使用 bincode 编码数据时,这是一个很好的假设,因为 bincode 可以读取它自己的序列化数据。
我所处的情况是我无法影响序列化器,因为它不是我编写的,并且由于遗留原因它必须保持不变。它将其向量编码为长度前缀数组,其中前缀始终为 2 个字节(或者在某些情况下为 4 个字节,但我很了解这些情况。一旦我知道如何使用 2 个字节进行操作,4 个字节就不应该是问题)。
如何使用 bincode(以及 serde)来反序列化这些字段?我可以解决 bincode 中硬编码的默认 8 字节长度吗?