我遇到了一个似乎无法解决的问题。 我有一种文件“ASDF”,在他们的标题中,我可以获得必要的信息来阅读它们。问题是其中一个“字段”只有4位长。
所以,让我们说它是这样的:
所以我的问题是,如果我尝试用字节读取器读取“长度”,我将丢失4位信息,或者将“4位关闭”。有没有办法只读4位?
答案 0 :(得分:1)
您应该在读取其他字节时读取此字节,然后应用0x0F
的位掩码例如
byte result = (byte)(byteRead & 0x0F);
这将保留结果中的低4位。
如果所需的位是高四,那么你可以应用移位运算符
byte result = (byte)((byteRead & 0x0F) >> 5);