1. 程式人生 > >十六進制高低位轉換,返回十進制數

十六進制高低位轉換,返回十進制數

() start pac col 16進制 轉換 har bigint big

/**
     * 十六進制高低位轉換,返回十進制數
     * @param str
     * @return
     */
    public static String decodeHexStringToDec(String str) {
        str =HighLowHex(spaceHex(str));
        String value =new BigInteger(str, 16).toString();
        return value;
    }
    
    /**
     * 十六進制數隔空位
     * @param str
     * 
@return */ private static String spaceHex(String str){ char[] array= str.toCharArray(); if(str.length()<=2) return str; StringBuffer buffer =new StringBuffer(); for(int i=0;i<array.length;i++){ int start =i+1;
if(start%2==0){ buffer.append(array[i]).append(" "); }else{ buffer.append(array[i]); } } return buffer.toString(); } /** * 高位16進制轉低位 * @param str * @return */ private static String HighLowHex(String str){
if(str.trim().length()<=2) return str; List<String> list = Arrays.asList( str.split(" ")); Collections.reverse(list); StringBuffer stringBuffer = new StringBuffer(); for(String string:list){ stringBuffer.append(string); } return stringBuffer.toString(); }

十六進制高低位轉換,返回十進制數