java 控制台scanner的中文输入问题

Posted 景上

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了java 控制台scanner的中文输入问题相关的知识,希望对你有一定的参考价值。



这个问题折腾了很久,也不知道对不对,希望有看到的前辈帮忙指正……


今天在写练习敲代码时,遇到了之前都没有注意到的一个问题,在控制台输入的时候无法输入自己想要的中文内容;

最后经反复测试,发现:有提醒语句输出,提醒接下来要在控制台输入的是什么内容时(前提是String类型,开头

要输入的第一个字符是中文字符),在输入前,要确保是英文字符输入状态,输入一两个英文字符后删除,再转换成中文

字符状态,就可以进行中文字符的输入了。更简单的一种方法是把指针移动到提醒语句后或者下一行。

如下图,输入完int型数字按回车键后,直接以中文输入状态对控制台进行中文字符输入的话会发现输入失败:


如下图,输入完int型数字按回车键后,确认是英文输入状态对控制台进行英文字符输入,删除后再输入中

文字符,输入成功



这个问题折腾了很久,也不知道对不对,希望有看到的前辈帮忙指正……

以上是关于java 控制台scanner的中文输入问题的主要内容,如果未能解决你的问题,请参考以下文章

Java Scanner .nextInt() 跳过输入

如何从java控制台获得用户输入?

如何从java控制台获得用户输入?

Java基础:控制台输入(Scanner)和输出(printprintlnprintf)

Java中用Scanner扫描控制台输入时的一个小问题

Java Scanner 接收到不存在的输入