c# hex 字符串转 byte数组
时间: 2024-10-20 09:17:24 浏览: 3
在C#中,将HEX字符串转换为Byte数组通常涉及到两步操作:首先解析HEX字符串,然后将每个十六进制字符对应的实际二进制值组合成字节数组。这里是一个简单的示例:
```csharp
using System;
using System.Text;
public static byte[] HexStringToByteArray(string hex)
{
// 检查输入是否为空
if (string.IsNullOrEmpty(hex))
throw new ArgumentException("Hex string cannot be empty or null");
// 将HEX字符串转换为ASCII字符数组
char[] chars = hex.ToCharArray();
// 创建一个新的StringBuilder用于构建字节
StringBuilder sb = new StringBuilder();
for (int i = 0; i < chars.Length; i += 2)
{
// 提取两个连续的十六进制字符并转换为十进制数
int value = Convert.ToInt32(chars[i] + chars[i + 1], 16);
// 添加到字节数组
sb.Append((byte)value);
}
// 返回最终的字节数组
return sb.ToByteArray();
}
```
你可以像这样调用这个方法:
```csharp
string hexStr = "48656C6C6F"; // "Hello"的HEX表示
byte[] byteArray = HexStringToByteArray(hexStr);
```
阅读全文