日期:2014-05-18  浏览次数:21086 次

抽取文件中的十六进制转换成十进制的问题
从一个文件中用十六进制读取出12个字节
假如现在读出来的是 FF 01 EB 88 8A 01
取出ff 01 eb后面的六个字节
然后88与01是互相调换位置
然后把互换位置后的01 88 8A转换成十进制
但是我转换的时候因为多出这个0 所以一直报异常
直接去掉又不行 因为这后面六个字节是不定的
我该怎么做呢

------解决方案--------------------
楼主还没有明白什么是一个字节

一个字节(byte)就是8个比特(bit)
一个字节能代表256个变化(2的8次方),换成十六进制是00到FF

“FF 01 EB 88 8A 01”这是明明是6个字节。。。

一个int占4个字节,只要填写这四个字节就能获得其数值。。。
“88 8A 01 00”

参考如下代码:
C# code
byte[] buffer = new byte[4];
buffer[0] = 0x88;
der, Eve