问题描述
我试图找出从 BitArray 转换为 byte[] 后的字节顺序。
首先,这里是 BitArray 内容:
BitArray encoded = huffmanTree.Encode(input);
foreach (bool bit in encoded)
{
Console.Write((bit ? 1 : 0));
}
Console.WriteLine();
输出:
Encoded: 000001010110101011111111
好的,如果我们手动将这些二进制转换为十六进制,我们将得到:05 6A FF
但是,当我在 C# 中使用转换时,我得到的是:
BitArray encoded = huffmanTree.Encode(input);
byte[] bytes = new byte[encoded.Length / 8 + (encoded.Length % 8 == 0 ? 0 : 1)];
encoded.copyTo(bytes,0);
string StringByte = BitConverter.ToString(bytes);
Console.WriteLine(StringByte); // just to check the Hex
输出:
A0-56-FF
尽管如此,正如我所提到的,它应该是 05 6A FF。请帮助我理解为什么会这样。
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)