如何使用右侧的低位写入文本文件(Bigendian)

Law*_*ton 3 c# endianness

默认情况下,BinaryWriter类使用左侧的低位写入int值(例如,当在十六进制编辑器中查看结果文件时,(int)6变为06 00 00 00).我需要右边的低位(例如00 00 00 06).

我该如何实现这一目标?

编辑:谢谢strager为我提供了我正在寻找的名称.我编辑了标题和标签,以便于查找.

Mar*_*ell 6

Jon Skeet 在这里有一个应该完成工作的EndianBitConverter .只需根据需要使用大/小端.或者,只需将数据移位几次;-p

        int i = 6;
        byte[] raw = new byte[4] {
            (byte)(i >> 24), (byte)(i >> 16),
            (byte)(i >> 8), (byte)(i)};
Run Code Online (Sandbox Code Playgroud)


gre*_*awk 6

不是真正的内置方式,但你可以使用它:EndianBit*.感谢Jon Skeet:P