用java将二进制转换ascii码

今天玩程序员闯关游戏最后一关,碰到个难题,一大串二进制数要转换成ascii码。
最后想到ASCII码对应的数是十进制数的,可以先把二进制转换成十进制,再强制转换成char类型就好了。
于是用到Integer类中的一个方法:
static int parseInt(String s, int radix)
          使用第二个参数指定的基数,将字符串参数解析为有符号的整数。
该方法使用方式:第一个参数应填写以字符串形式表示的二进制数。第二个参数填写“2”,以表示第一个参数是二进制数。该方法返回一个十进制带符号的整数。

这里贴出源代码:
import java.io.*;

public class ToAscii {

	public static void main(String[] args) throws IOException {
		BufferedReader br = new BufferedReader(new InputStreamReader(
				new FileInputStream("binary.txt")));
		String[] ss=null;//用来保存第一行的各项
		for(;;) {
			String str = br.readLine();
			//如果读到文件最后一行之后,则退出循环
			if(str==null)
				break;
			ss=str.split(" ");//每一行的各项用空格分开
			for (String s : ss) {
				int numasc = Integer.parseInt(s, 2);
				System.out.print((char)numasc);//强制转换成char类型,并输出
			}
		}
		br.close();
	}
}


你可能感兴趣的:(java,游戏,二进制,ASCII)