从带符号2的补码java中将十六进制转换为十进制

时间:2018-06-26 23:37:44

标签: java

我想将十六进制数字从带符号2的补码转换为十进制,如下所示:FFOC-> -64。我正在使用Java。我已经知道如何从十六进制转换为十进制和二进制,但是不转换为带符号2。 预先感谢。

1 个答案:

答案 0 :(得分:0)

好,我找到了解决方法:

String ss = new BigInteger(rssi, 16).toString(2);
        String aux = ss.substring(8);
        int res;
        if(aux.charAt(0)=='0'){
            res = Integer.parseInt(aux,2);
        }
        else{
            String g = aux.substring(1);
            res = Integer.parseInt(g, 2) * (-1);

        }