gpt4 book ai didi

java - 从控制台读取包含特殊字符的数组

转载 作者:行者123 更新时间:2023-12-02 05:28:17 24 4
gpt4 key购买 nike

我正在尝试这个:

Scanner keyboard = new Scanner(System.in);
char[] character = keyboard.next().toCharArray();
while (character.length != 5) {
keyboard = new Scanner(System.in);
character = keyboard.next().toCharArray();
}

直到你引入 5 个字符,一直要求你再次引入 5 个字符,但是当我尝试引入特殊字符 'ñ' 或 'ç' 时,它不起作用,我已经尝试过了,没有时间打印结果唯一打印的是正方形。怎么解决这个问题?

我使用的是 NetBeans IDE 7.4。

我的意思是,我只是一直要求引入更多角色,但它一直卡住,直到你引入 5 个普通角色。

最佳答案

在这两种情况下都使用操作系统的编码。

String encoding = "Cp1252"; // Western Latin-1
Scanner keyboard = new Scanner(System.in, encoding); // Twice!

如果打印默认编码:

System.out.println(System.getProperty("file.encoding"));

您可能会看到,IDE 使用“UTF-8”左右。也就是说,它改变了file.encoding。然而,System.in 和 System.out 只需要使用原始编码。

关于java - 从控制台读取包含特殊字符的数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25791465/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com