我有一个byte[]
我已经从文件中读取了,并且我想要得到一个int
从其中的两个字节。这是一个例子:
byte[] bytes = new byte[] {(byte)0x00, (byte)0x2F, (byte)0x01, (byte)0x10, (byte)0x6F};
int value = bytes.getInt(2,4); //This method doesn't exist
这应该使value
等于0x0110
, or 272
以十进制表示。但显然,byte[].getInt()
不存在。我怎样才能完成这个任务?
上面的数组只是一个例子。我不知道实际值。
你应该选择简单的:
int val = ((bytes[2] & 0xff) << 8) | (bytes[3] & 0xff);
您甚至可以编写自己的辅助函数getBytesAsWord (byte[] bytes, int start)
如果您不希望计算充斥您的代码,则可以为您提供该功能,但我认为这可能有点过头了。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)