首页 > 解决方案 > 扫描仪未正确扫描 UTF-8 字符(java)

问题描述

我正在制作一个控制台程序,用于扫描通常包含捷克语字符(如 ěščřžáíé)的名称。在 Eclipse 中,它可以完美运行,但是当我将其导出到 jar 文件并在 cmd 中运行时,扫描仪将捷克语字符替换为“ˇçź”等字符。当我打印字符时,System.out.print("ěščřžýá");它们显示正确。我尝试chcp在 cmd 中使用 65001 将编码更改为 UTF-8,但这完全删除了程序中各处的捷克字母。我也尝试过使用new Scanner(System.in, "UTF-8"),但这只是用问号替换了字母。我怎样才能解决这个问题?提前致谢

标签: java

解决方案


chcp我通过在打印出来的 cmd 中执行来解决它Active code page: 852,然后将 852 放在旁边,new Scanner(System.in)如下所示new Scanner(System.in, "Cp852"):现在它可以正确打印和扫描字符了!


推荐阅读