【发布时间】:2016-10-29 15:19:23
【问题描述】:
我正在尝试将 BitArray 转换为十六进制字符串
我的测试 BitArray 是“0000001010000000”,它应该以十六进制返回“02 80”
尝试了以下方法:
BitArray b = new BitArray(16);
b.Set(7, true);
b.Set(9, true);
然后,通过检查我创建的 BitArray 对象,得到与该二进制字符串对应的 640 十进制值。
但我找不到将其转换为十六进制的方法。
我避免使用不同类的字节数组。
这行得通,但它有点复杂我确信必须有一个更简单的方法,我不明白为什么我必须切换值。
byte[] bytes = new byte[2];
b.CopyTo(bytes, 0);
string Retorno = BitConverter.ToString(bytes);
string[] auxstr = Retorno.Split('-');
Retorno = auxstr[1] + "-" + auxstr[0];
有什么建议吗?
【问题讨论】:
-
看看this SO 帖子
-
您可以将其转换为
byte[],如this question 并单独格式化字节。
标签: c#