为了账号安全,请及时绑定邮箱和手机立即绑定

scanner输入汉字输出显示乱码

在控制台输入汉字打印输出时显示乱码怎么办?编码都改成utf-8了,还是不行

正在回答

4 回答

点击RUN  Debug Configuarations 选择你要运行的类 选择Arguments 在 VM argument 中输入 -Dfile.encoding=GBK

点击common 选择 other 选择GBK 即可解决你的这个单独类输出中文乱码问题

0 回复 有任何疑惑可以回复我~

太给力了!我也碰到了这个问题,别人都解释不清楚出现乱码的原因,现在懂了

0 回复 有任何疑惑可以回复我~

已解决,谢谢各位

0 回复 有任何疑惑可以回复我~

这恰巧是你修改为UTF-8引起的问题,这是eclipse的bug,就是不能自动识别javaVM运行环境,例如你设置的全部为UTF-8,那么MyEclipse会默认你的运行环境是UTF-8,实际情况是你的系统是中文版本系统,默认的JavaVM运行环境是GBK,而你控制台却是UTF-8,输出编码出现异常,故输出是乱码。这是比较复杂的,我暂时也没有找到一个一劳永逸的解决方法,只能针对单个执行文件分别设置JAVA虚拟机运行环境(你修改的结果只对当前执行文件有效,不知道怎么将控制台编码缺省值修改为GBK)。
具体这么设置:
run(运行)→open run dialog(运行配置)→这时右边有选项卡,选择 common(公共)→Console encoding(控制台编码),选择other其他 然后输入 GBK ,点击Apply(应用)。OK,这下就正常了。当然其他编码问题你需要自己转换。
这是因为运行设置

1 回复 有任何疑惑可以回复我~
#1

weibo_勤奋的车轱辘__0 提问者

谢谢,可能是我的eclipse有问题,修改控制台编码时没有GBK,然后eclipse也不支持ANSI,所以怎么改都不行,我就又在官网下了个eclipse,就可以了,生成的.java文件在记事本打开的时候是ANSI 编码,这时控制台打印的就不是乱码了
2017-06-13 回复 有任何疑惑可以回复我~
#2

慕娘9392185

谢谢你的解决方案,十分有帮助!
2022-09-26 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消

scanner输入汉字输出显示乱码

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信