C# 字节转换
时间: 2023-07-12 17:15:44 浏览: 48
将 byte 类型转换为其他数据类型,可以使用以下方法:
1.将 byte 类型转换为 int 类型
```
byte b = 255;
int i = b;
```
2.将 byte 数组转换为字符串类型
```
byte[] byteArray = {65, 66, 67};
string str = Encoding.ASCII.GetString(byteArray);
```
3.将 byte 数组转换为十六进制字符串类型
```
byte[] byteArray = {255, 128, 0};
string hexString = BitConverter.ToString(byteArray);
```
4.将十六进制字符串转换为 byte 数组类型
```
string hexString = "FF8000";
byte[] byteArray = Enumerable.Range(0, hexString.Length)
.Where(x => x % 2 == 0)
.Select(x => Convert.ToByte(hexString.Substring(x, 2), 16))
.ToArray();
```
相关问题
C#将字节转换为Stream
要将字节转换为Stream,可以使用MemoryStream类。以下是示例代码:
```csharp
byte[] bytes = new byte[] { 1, 2, 3, 4, 5 };
MemoryStream stream = new MemoryStream(bytes);
```
在这个示例中,我们首先创建一个字节数组,然后使用MemoryStream的构造函数将其转换为流。现在,可以使用stream对象来读取或写入字节。
C#将高低位字节转换成int
在 C# 中将高低位字节转换成 int,可以使用 BitConverter 类的静态方法 BitConverter.ToInt32(byte[] value, int startIndex)。
具体步骤如下:
1. 定义一个字节数组 byte[],并赋值高低位字节。
2. 调用 BitConverter.ToInt32(byte[] value, int startIndex) 方法将 byte[] 转换成 int。
以下是示例代码:
```csharp
byte[] bytes = new byte[] {0x78, 0x56, 0x34, 0x12}; // 高低位字节
int value = BitConverter.ToInt32(bytes, 0); // 转换成 int
Console.WriteLine(value); // 输出结果:305419896
```
请注意,高低位字节的顺序是根据计算机结构而定的,不同的计算机结构可能有不同的顺序。如果您要在不同的计算机结构之间传输数据,请确保使用相同的字节顺序。