在.NET中将int转换为byte [4]

gal*_*ets 4 .net c#

我想知道这里是否有人知道将整数转换为字节的有效方法[4]?我正在尝试将一个int写入MemoryStream,这件事要我给它字节

Gre*_*ech 14

BitConverter.GetBytes如果要将基本类型转换为其字节表示,则可以使用.请记住确保您的方案的字节顺序正确.


Dan*_*ant 7

使用BinaryWriter(用你的内存流构建); 它有一个采用Int32的write方法.

BinaryWriter bw = new BinaryWriter(someStream);
bw.Write(intValue);
bw.Write((Int32)1);
// ...
Run Code Online (Sandbox Code Playgroud)


Jon*_*eet 6

  • BinaryWriter 将是写入流的最简单的解决方案
  • BitConverter.GetBytes 如果你真的想要一个数组是最合适的
  • 我在MiscUtil(EndianBitConverterEndianBinaryWriter)中的版本可以让您更好地控制字节序,还可以直接转换为现有数组.