运行环境: 1.jdk1.8 2.cmd执行java,且cmd 通过chcp命令设置代码页为65001(UTF-8) 3.cmd命令格式为:java Test 或 java -Dfile.encoding=utf-8 Test 结果: 以下两种获取用户中文输入方式均乱码 问题: 什么原因导致的?以及如何解决? (直接说把cmd代码页改成936(GBK)请爬一边)
1. Scanner scanner = new Scanner(System.in, "utf-8"); //或 Scanner scanner = new Scanner(System.in); String nextLine = scanner.nextLine(); System.out.println(nextLine); 2. BufferedReader br = new BufferedReader(new InputStreamReader(System.in, "utf-8")); // 或 BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); String line = br.readLine(); System.out.println(line);
java接收后,做转换
为啥要在cmd运行?