c# 16进制字符串 转数组
时间: 2023-11-09 13:03:32 浏览: 101
可以使用以下代码将16进制字符串转换为字节数组:
```csharp
string hexString = "FFAABBCC";
byte[] byteArray = Enumerable.Range(0, hexString.Length)
.Where(x => x % 2 == 0)
.Select(x => Convert.ToByte(hexString.Substring(x, 2), 16))
.ToArray();
```
这里的 `hexString` 是要转换的16进制字符串,`byteArray` 是转换后的字节数组。
解释一下代码的实现过程:
1. 使用 `Enumerable.Range` 生成一个从 0 到 `hexString` 长度的整数序列。
2. 使用 `Where` 方法筛选出序列中所有下标为偶数的元素。
3. 使用 `Select` 方法将每个下标对应的两个字符转换为一个字节,并将结果存储在一个新的序列中。
4. 使用 `ToArray` 方法将序列转换为字节数组。
相关问题
C# 10进制字符串转16进制字符串
可以使用 Convert.ToString 方法将 10 进制字符串转换为整数,再使用 ToString 方法将整数转换为 16 进制字符串。示例代码如下:
```
string decimalStr = "123";
int decimalNum = Convert.ToInt32(decimalStr);
string hexStr = decimalNum.ToString("X");
Console.WriteLine(hexStr); // 输出:7B
```
c# 16进制字符串 转成 16进制
很抱歉,引用中提到的是C#十六进制字符串转十进制int的方法,而不是转成十六进制。如果您需要将十六进制字符串转成十进制int,可以使用Convert.ToInt32(string value, int fromBase)方法,其中value为要转换的字符串,fromBase为原始进制数,例如16表示十六进制。具体操作步骤如下:
1. 将十六进制字符串赋值给一个string类型的变量。
2. 使用Convert.ToInt32(string value, int fromBase)方法将十六进制字符串转成十进制int类型。
3. 将转换后的十进制int类型赋值给一个int类型的变量。
阅读全文