2017-05-24 96 views
1

我在学习java一段时间了,我刚刚遇到了这个问题。 当我尝试用扫描仪类阅读希腊字母时,只是一切都出错了。如何使用Scanner类从键盘读取希腊文输入?

例 --in的主要方法

Scanner sc=new Scanner(System.in); 
System.out.println(sc.nextLine()); 

--in控制台i型例如

->Ελλάδα 

我得到的结果:

我使用NetBeans IDE。

我做错了什么?扫描仪支持希腊字母?任何替代解决方案?谢谢。

回答

1

**刚刚发现了我的问题的解决方案。因为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"


+0

感谢分享!花了整晚试图弄清楚Netbeans发生了什么!当通过cmd使用javac时,同样的问题仍然存在,但intelij开箱即用! –

0

您需要将扫描仪默认编码设置为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编码”。

+0

即时得到同样的结果:/ –

相关问题