1. 程式人生 > >字元與數字和ASCII碼相互轉換

字元與數字和ASCII碼相互轉換

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 編碼與 Unicode 編碼不一樣,0到9的unicode值如下:
\u0030 數字 0
\u0031 數字 1
\u0032 數字 2
\u0033 數字 3
\u0034 數字 4
\u0035 數字 5
\u0036 數字 6
\u0037 數字 7
\u0038 數字 8
\u0039 數字 9