C#相当于python的struct.pack

时间:2009-11-30 07:01:44

标签: c# binary struct bit-packing

是否有一个C#库允许与standard library中的python struct类似的功能?

可以使用实际对齐的结构非常接近地模拟结构库。但我还没有找到任何方法来直接控制C#结构中的endianess(C#的结构似乎更倾向于COM互操作,而不是通用二进制包装。)

1 个答案:

答案 0 :(得分:6)

最接近的等价物可能是使用BinaryWriter写入MemoryStreamBitConverter,以便将单个值一次性转换为字节数组。

如果要控制其字节顺序,可以使用MiscUtil中的EndianBinaryWriter / EndianBitConverter。我的EndianBitConverter的一个额外功能是您可以转换为现有数组的特定部分,如果您想自己移植struct.pack,这将有所帮助。