我在学习java一段时间了,我刚刚遇到了这个问题。 当我尝试用扫描仪类阅读希腊字母时,只是一切都出错了。如何使用Scanner类从键盘读取希腊文输入?
例 --in的主要方法
Scanner sc=new Scanner(System.in);
System.out.println(sc.nextLine());
--in控制台i型例如
->Ελλάδα
我得到的结果:
我使用NetBeans IDE。
我做错了什么?扫描仪支持希腊字母?任何替代解决方案?谢谢。
我在学习java一段时间了,我刚刚遇到了这个问题。 当我尝试用扫描仪类阅读希腊字母时,只是一切都出错了。如何使用Scanner类从键盘读取希腊文输入?
例 --in的主要方法
Scanner sc=new Scanner(System.in);
System.out.println(sc.nextLine());
--in控制台i型例如
->Ελλάδα
我得到的结果:
我使用NetBeans IDE。
我做错了什么?扫描仪支持希腊字母?任何替代解决方案?谢谢。
**刚刚发现了我的问题的解决方案。因为netbeans的默认编码似乎不是utf-8,所以我编辑了netbeans安装/ etc/netbeans.conf文件。 在开头的行:netbeans_default_options我添加到字符串的末尾此:-J-指定-Dfile.encoding = UTF-8所以现在它看起来像这样
netbeans_default_options =“ - J-客户-J -Xss2m -J-Xms32m -J-Dapple.laf.useScreenMenuBar = true -J-Dapple.awt.graphics.UseQuartz = true -J -Dsun.java2d.noddraw = true -J-Dsun.java2d.dpiaware = true -J -Dsun.zip.disableMemoryMapping =真-J-指定-Dfile.encoding = UTF-8"
您需要将扫描仪默认编码设置为UTF8。这将使你能够正确显示希腊字符:
import java.util.Scanner;
public class Answer {
public static void main(String args[]) {
Scanner keyboard = new Scanner(System.in, "utf-8");
System.out.println("enter greek letters");
String myStr = keyboard.next();
System.out.println(myStr);
}
}
另一件事是尝试以确保NetBeans的有“为NetBeans应用程序”正确的(UTF-8)编码集。看看:https://www.muehlencord.de/wordpress/2015/10/16/netbeans-utf8-encoding/
这告诉你如何设置“在Netbeans上的UTF-8编码”。
即时得到同样的结果:/ –
感谢分享!花了整晚试图弄清楚Netbeans发生了什么!当通过cmd使用javac时,同样的问题仍然存在,但intelij开箱即用! –