在学习Java IO的输入输出流的时候遇到了一个问题,就是无论用BufferedReader还是Scanner输入中文,在控制台输出的时候都会出现乱码的情况,而且不管在Window-Preferences中怎么改变编码方式都无效(包括UTF-8和GBK)。
import java.io.BufferedReader; import java.io.InputStreamReader; public class Demo22 { public static void main(String args[]) throws Exception { BufferedReader buf = null; buf = new BufferedReader(new InputStreamReader(System.in)); String str = null; System.out.println("请输入内容:"); try { str = buf.readLine(); } catch (Exception e) { e.printStackTrace(); } System.out.println("输入的内容为:" + str); } }
后来发现在Run Configurations里的Common中将编码方式改成GBK就正常了。
以上是测试的代码:
运行结果: