C# byte转int:大小端读取

文章目录

    • Int转为Byte
      • int转为小端存储方式的byte[]
      • int转为大端存储方式的byte[]

大端模式和小端模式是计算机存储多字节数据时的两种方式。
大端模式:最高有效(最高位)的字节存放在最小地址上,其他字节依次向后排列。读取时,最先读到的是最重要的字节。
小端模式:最不重要的字节存放在最小地址上,其他字节依次向前排列。

Int转为Byte

int转为小端存储方式的byte[]

// 小端
// 方法1:系统函数
uint value = 14; // 示例值
byte[] bytes = BitConverter.GetBytes(value);
Console.WriteLine(BitConverter.ToString(bytes));

// 或者方法2
bytes = new byte[4];
for (int i = 0; i < 4; i++)
{
    bytes[i] = (byte)((value >> i * 8) & 0xFF); // 先取低8位
}
Console.WriteLine(BitConverter.ToString(bytes));

输出:

0E-00-00-00
0E-00-00-00

int转为大端存储方式的byte[]

// 大端
uint value = 14; // 示例值
byte[] bytes = BitConverter.GetBytes(value).Reverse().ToArray();
Console.WriteLine(BitConverter.ToString(bytes));


bytes = new byte[4];
for (int i = 0; i < 4; i++)
{
    bytes[i] = (byte)((value >> (3 - i) * 8) & 0xFF); // 先取高8位
}
Console.WriteLine(BitConverter.ToString(bytes));

输出:

00-00-00-0E
00-00-00-0E

你可能感兴趣的:(C#项目,笔记,c#,开发语言)