Java Scanner接受的时候输入汉字为什么没有返回?

2025-03-10 14:26:53
推荐回答(1个)
回答1:

因为windows平台是基于GBK编码的,所有改为UTF-8会产生乱码!

提示:GBK一个汉字占两个字节,而UTF-8是三个字节。
可以这样,例如下列代码:

Scanner sc = new Scanner(System.in);
String str = sc.next();
byte[] b = str.getBytes("utf-8");
System.out.println(new String(b,"UTF-8"));