int类型数组238 6 77 63 25 193 78 70 74转换为hex数组输出为ee64a3f19c14e464d在ee后面本该是06,如何还是保留0
时间: 2024-02-20 14:56:25 浏览: 155
hex2array:将int十六进制格式转换为C数组。 尽可能简单
你可以使用以下代码将 int 类型数组转换为十六进制数组,并在每个十六进制数前面补零:
```csharp
int[] intArray = new int[] { 238, 6, 77, 63, 25, 193, 78, 70, 74 };
byte[] byteArray = intArray.SelectMany(i => BitConverter.GetBytes(i)).ToArray();
string hexString = BitConverter.ToString(byteArray).Replace("-", "").ToLower();
```
这段代码使用 `SelectMany` 方法将每个 int 类型的数值转换为字节数组,再使用 `ToArray` 方法将所有字节数组连接起来,得到一个完整的字节数组。接着使用 `BitConverter` 类将字节数组转换为十六进制字符串,并使用 `Replace` 方法去掉中间的连字符。最后使用 `ToLower` 方法将字符串转换为小写字母格式。这样得到的十六进制字符串为 "ee064d3f19c14e464a",其中的 "06" 也被保留了。
阅读全文