日期:2014-05-20  浏览次数:21219 次

如何将加密后字符串转换成 对应的数字字符串(不影响解密)
加密前 = 1234567
加密后 = ,HI6'鉓?


------解决方案--------------------
取出每一个字符,然后加上条件,解码就反回来就得呗。
------解决方案--------------------
Java code
/**
     * 将一个字节数组以十六进制的形式打印输出,每两个字符一个空格.末尾无换行.
     * @param buf 待转换的字节数组
     * @param out 输出到该{@link java.io.PrintStream}类上面
     */
    public static void printHexString(byte buf[],PrintStream out){
        for(int i=0;i<buf.length;i++){
            byte b = buf[i];
            out.print(HEX_CHARs[(b&0xF0)>>4]);
            out.print(HEX_CHARs[b&0x0F]);
            out.print(' ');
        }
    }
        /**
     * 十六进制字符组成的数组,数组下标的值与内容相对应
     */
    public static final char HEX_CHARs []=new char[]{
        '0','1','2','3','4','5','6','7','8','9','A','B','C','D','E','F'
    };

------解决方案--------------------
你用Base64进行编码,传到对方后在解码,就可以了.

Base64编码,会把二进制转换成由数字字母组成的ACSII码,并且是可逆的.

或者向我给的代码思路,转换成16进制的字符串形式,到对方后,在还原回来,就可以了.