BitConverter是C#中用于基本类型与字节数组相互转换的工具类,支持GetBytes()和ToInt32()/ToSingle()等方法,受系统字节序影响,提供IsLittleEndian属性及字节序转换支持。

在C#中,BitConverter 类提供了将基本数据类型转换为字节数组(byte[])以及从字节数组还原为原始类型的功能。这在处理网络通信、文件读写、序列化或与硬件交互时非常有用。
BitConverter的基本功能
BitConverter 位于 System 命名空间下,无需额外引用。它支持常见的值类型如 bool、int、float、double、long、short 等与 byte 数组之间的转换。
常用方法包括:
- GetBytes():将基本类型转换为字节数组
- ToInt32(), ToInt16(), ToSingle(), ToDouble() 等:从字节数组中提取对应类型的值
基本类型转字节数组(使用 GetBytes)
通过 BitConverter.GetBytes() 可以将大多数基本类型转为 byte[]:
// 示例:将不同类型转为字节数组
int num = 100;
byte[] intBytes = BitConverter.GetBytes(num);
float f = 3.14f;
byte[] floatBytes = BitConverter.GetBytes(f);
bool flag = true;
byte[] boolBytes = BitConverter.GetBytes(flag);
// 输出字节数组内容
Console.WriteLine(string.Join(", ", intBytes)); // 如:100, 0, 0, 0
Console.WriteLine(string.Join(", ", floatBytes)); // 浮点数的二进制表示
登录后复制
注意:整型和浮点数的结果字节顺序受系统字节序(Endianness)影响。x86 和 x64 架构通常为小端序(Little-Endian),即低位字节在前。
字节数组还原为基本类型(使用 ToXXX 方法)
使用 BitConverter.ToInt32()、ToSingle() 等方法可以从字节数组中解析出原始值:
版权声明:除非特别标注,否则均为本站原创文章,转载时请以链接形式注明文章出处。
还木有评论哦,快来抢沙发吧~