1.网上看了好多,byte[]数组转为基本类型的,我要的是截取,比如截取byte数组里第2个到第3个byte放到一个新byte数组,然后将byte新数组转为基本数据类型.
2.货不多说,上代码:byte[]转int
/**
* 自己的byte[]转int
*
* @param bys
* 字节数组
* @param start
* 需要转换的开始索引位数
* @param len
* 需要转换的字节数量
* @return
*/
public static int bytes2IntBE(byte[] bys, int start, int len) {
return bytes2Int(bys, start, len, true);
}
private static int bytes2Int(byte[] bys, int start, int len,
boolean isBigEndian) {
int n = 0;
for (int i = start, k = start + len % (Integer.SIZE / Byte.SIZE + 1); i < k; i++) {
n |= (bys[i] & 0xff) << ((isBigEndian ? (k - i - 1) : i) * Byte.SIZE);
}
return n;
}
3.将byte[]数组截取的新数组转为基本数据类型,要截取的数组,截取的位置,要截取的长度.网上太少,还是翻墙去谷歌才查出来的.
4.接下来放出byte[]截取转float类型:
http://download.csdn.net/detail/asfg5369/9804152