字符与数字和ASCII码相互转换

来源:互联网 发布:数据安全技术包括哪些 编辑:程序博客网 时间:2024/06/06 08:34
public class Test {    public static void main(String[] args) {            String asciiStr = stringToAscii("0123456789abcdefghijklmnopqrstuvwxyz");        System.out.println(asciiStr);//48,49,50,51,52,53,54,55,56,57,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,        System.out.println(asciiToString(asciiStr));//0123456789abcdefghijklmnopqrstuvwxyz    }    /**     * 第33~126号(共94个)是字符,其中第48~57号为0~9十个阿拉伯数字      * @param val     * @return     *      * @author HuangSL     * @since 2017/12/01     */    public static String stringToAscii(String val) {        StringBuilder builder = new StringBuilder();        for (int i = 0; i < val.length(); i++) {            char c = val.charAt(i);            builder.append((byte) c).append(",");        }        return builder.toString();    }    public static String asciiToString(String val) {        String[] asciiArr = val.split(",");        StringBuilder builder = new StringBuilder();        for (int i = 0; i < asciiArr.length; i++) {            builder.append((char)Integer.parseInt(asciiArr[i]));        }        return builder.toString();    }}

关于 ASCII的相关信息,请关注以下文章:

ASCII (包括Java中2种表示ASCII的方式)

需要注意的是:
ASCII 编码与 Unicode 编码不一样,0到9的unicode值如下:
\u0030 数字 0
\u0031 数字 1
\u0032 数字 2
\u0033 数字 3
\u0034 数字 4
\u0035 数字 5
\u0036 数字 6
\u0037 数字 7
\u0038 数字 8
\u0039 数字 9

阅读全文
0 0
原创粉丝点击