首页 > 代码库 > java笔记--ASCII编码认知和转换
java笔记--ASCII编码认知和转换
ASCII是基于拉丁字母的一套电脑编码系统,主要用于显示英语字符
是当今最通用的单字节编码。包括128个字符。
ASCII编码和字符的转换
代码:
package com.xhj.data;
import java.util.Scanner;
/**
* ASCII编码转换
*
* @author XIEHEJUN
*
*/
public class ASCIIExchange {
/**
* ASCII编码转换成字符
*
* @param number
* @return
*/
public static String asciiToChar(int number) {
char[] a = null;
if (number >= 0 && number <= 128) {
a = Character.toChars(number);
} else {
System.out.println("若是整数必须大于0,小于128");
service();
}
return new String(a);
}
/**
* 字符转换成ASCII编码
*
* @param str
* @return
*/
public static String charToAscii(String str) {
StringBuffer sb = new StringBuffer();
int number;
for (int i = 0; i < str.length(); i++) {
number = Character.codePointAt(str, i);
sb.append(number + " ");
}
return sb.toString();
}
/**
* 程序操作方法
*/
public static void service() {
try {
Scanner sc = new Scanner(System.in);
System.out.println("请输入字符串");
String str = sc.nextLine();
if (str.matches("\\d*")) {
System.out.println("转换成字符为: "+ asciiToChar(Integer.parseInt(str)));
service();
} else if (str.matches("\\p{ASCII}*")) {
System.out.println("转换成ASCII编码为: " + charToAscii(str));
service();
} else {
System.out.println("输入数据不正确,请重新输入:");
service();
}
} catch (Exception e) {
System.out.println("输入错误,程序崩溃,抛出异常:" + e.getMessage());
System.out.println("请输入有效字符");
service();
}
}
public static void main(String[] args) {
try {
service();
} catch (Exception e) {
System.out.println("输入错误,程序崩溃,抛出异常:" + e.getMessage());
System.out.println("请输入有效字符");
service();
}
}
}