java 中byte 与bit 互相转换

1.byte转bit 有多重方法:

方法一:

public static String getBit(byte by){
StringBuffer sb = new StringBuffer();
sb.append((by>>7)&0x1)
 .append((by>>6)&0x1)
 .append((by>>5)&0x1)
 .append((by>>4)&0x1)
 .append((by>>3)&0x1)
 .append((by>>2)&0x1)
 .append((by>>1)&0x1)
 .append((by>>0)&0x1);
return sb.toString();
}


方法二:

String bite = new BigInteger(1,new byte[]{bytes[3]}).toString(2);
StringBuffer strb = new StringBuffer();
for(int i = 0;i<8-bite.length();i++){
strb.append(0);
}
strb.append(bite);


2.bite 转byte

    public static byte bitToByte(String bit) {  
        int re, len;  
        if (null == bit) {  
            return 0;  
        }  
        len = bit.length();  
        if (len != 4 && len != 8) {  
            return 0;  
        }  
        if (len == 8) {// 8 bit处理  
            if (bit.charAt(0) == '0') {// 正数  
                re = Integer.parseInt(bit, 2);  
            } else {// 负数  
                re = Integer.parseInt(bit, 2) - 256;  
            }  
        } else {//4 bit处理  
            re = Integer.parseInt(bit, 2);  
        }  
        return (byte) re;  
    }

你可能感兴趣的:(android)