gpt4 book ai didi

Java 扫描仪和字母 åäö

转载 作者:行者123 更新时间:2023-11-29 07:45:09 26 4
gpt4 key购买 nike

我想在 Java 中输入可能包含字母 åäö 的字符串,但 Scanner 将它们转换为其他一些字符。我也尝试过使用 utf-8:

String s1 = new Scanner(System.in).nextLine();
String s2 = new Scanner(System.in, "utf-8").nextLine();
System.out.println(s1 + "|" + (int)s1.charAt(0));
System.out.println(s2 + "|" + (int)s2.charAt(0));
System.out.println((int)'å' + "|" + (int)'?');

这会产生:

å
å
?|8224
?|65533
229|63

所有字符用utf-8变成65533。如果没有 utf-8,ä 变成 8222,ö 变成 8221,Å 变成 65533,Ä 变成 381,Ö 变成 8482。

是否有一些替代的输入法允许 åäö?

我正在运行 java 8u25,我正在从 Windows 控制台运行该程序。

最佳答案

问题不在于 Java,而在于 Windows 控制台,它使用自己的编码。您可以使用 chcp 命令让它显示。很可能是 Codepage 850。在 Java 中,您可以像这样使用它

new Scanner(System.in, "Cp850")

关于Java 扫描仪和字母 åäö,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26511756/

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