将字节数组从小端转换为大端,反之亦然

sco*_*eep 5 endianness c#-4.0

我将如何将字节数组 Byte[] 从小端转换为大端。

我正在考虑将这个程序移植到 Mono 并想知道最好的方法。任何帮助,将不胜感激。

编辑:我正在阅读有关寡妇和单声道的文件。

谢谢。鲍勃。

cdh*_*wie 4

除非您byte[]知道byte[]. 例如,2 字节整数需要交换其两个字节,而 4 字节整数则需要反转其 4 个字节。如果数组仅包含一个整数,则反转元素将起作用。如果不是,您将需要单独处理数组中包含的每个不同实体。

Mono.DataConvert是一个可以在这里提供帮助的库,如果您知道数组的哪些段需要被视为哪种数据类型。我强烈建议您查看这个库;我在几个项目中使用它,它非常漂亮。它甚至获得了 MIT 许可,并且包含在一个源文件中,因此您可以将其直接编译到您正在构建的任何程序集中。