C# BitConverter类的用法 - 基本数据类型与字节数组的转换

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

C# BitConverter类的用法 - 基本数据类型与字节数组的转换-第1张图片-佛山资讯网

在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() 等方法可以从字节数组中解析出原始值:

标签: c# 字节 工具

发布评论 0条评论)

还木有评论哦,快来抢沙发吧~