我的程序中所有JTextField的字符都有问题(编译成JAR时)。 当我从Eclipse运行它时一切正常......问题是从已编译的JAR运行时。
问题是,当我从带有稀有字符的输入中提取文本时,我将带有特殊字符的文本插入JTextField作为“Ñandú?”。
例如:System.out.println( myTextField.getText() );
。这将写在控制台中:IMAGE
我已经尝试过各种方式来切换字符,但是当我再次在控制台上或在界面中再次出现时,会出现罕见的迹象。我甚至尝试过图书馆Commons Lang 3.1
,但我没有成功:(
我希望有人知道该怎么做!唯一的工作方式是在运行jar文件时插入-Dfile.encoding=UTF-8
,但事实并非如此。
对不起英语。感谢!!!
答案 0 :(得分:0)
Java使用计算机的默认编码,对于Windows,它将是C16并且不支持unicode。在终端中使用以下命令运行程序:
java -jar -Dfile.encoding=utf-8 <path to your .jar>
如果您的文档中有任何unicode,Eclipse会运行您的应用程序,但除此之外,您可以自己运行。
我能想到的另一种可能的方法是使用此命令编写.bat脚本并将其放在与应用程序相同的文件夹中。