1

我在 Netbeans 中扫描希伯来语时遇到问题。我正在尝试扫描用户的输入并显示在控制台中,但它显示为乱码。

我的代码是:

 public static void main(String[] args) {
    Scanner input = new Scanner(System.in);
    System.out.println("Please input:");
    System.out.println("Your input is: " + input.next());
}

这是控制台:

跑:

请输入:

שלום

您的输入是:����

构建成功(总时间:3 秒)

完全相同的代码在 Eclipse 上也能完美运行。如果我 Println() 是一个希伯来语单词,它也可以正常工作,所以这不是编码问题。(我使用的是 Netbeans 7.3.1)

非常感谢你,

巴拉克。

4

2 回答 2

2

当您调用Scanner(InputStream)时,它将使用平台默认编码将流中的字节转换为文本。

我怀疑你只需要弄清楚你的控制台正在使用什么编码,然后用它来构造一个InputStreamReader开头System.in,或者将编码名称作为第二个参数传递给构造函数。

于 2013-09-10T17:51:27.237 回答
0

问题:JAVA 中的扫描仪输出乱码而不是希伯来语。

如果您想通过命令行或 powershell 获取希伯来语输入,您需要检查 Windows PC 上的终端编码。

为此,只需在控制台中输入 chcp

作为输出,您应该看到 chcp 28598

如果您看到不同的数字类型 chcp 28598

现在您的控制台编码设置为希伯来语

于 2020-11-06T01:21:52.717 回答