0

我的程序中所有 JTextField 的字符都有问题(编译成 JAR 时)。当我从 Eclipse 运行它时,一切正常......问题是从已经编译的 JAR 运行时。

问题是,当我在 JTextField 中插入带有特殊字符“ Ñandú? ”的文本时,java 从带有稀有字符的输入中提取文本。例如:System.out.println( myTextField.getText() );。那将在控制台中写入:IMAGE

我尝试了各种切换字符的方法,但是当我在控制台或界面上再次写入时,又出现了罕见的迹象。我什至尝试过图书馆Commons Lang 3.1,但我没有成功:(

我希望有人知道该怎么做!唯一的工作方法是-Dfile.encoding=UTF-8在运行 jar 文件时插入,但事实并非如此。

对不起英语。谢谢!!!

4

1 回答 1

0

Java 为您的计算机使用默认编码,对于 Windows,该编码为 C16,并且不支持 unicode。在终端中使用以下命令运行您的程序:

java -jar -Dfile.encoding=utf-8 <path to your .jar>

如果您的文档中有任何 unicode,Eclipse 会像这样运行您的应用程序,但在它之外,您只能靠自己了。

我能想到的唯一其他可能的方法是使用此命令编写一个 .bat 脚本并将其放在与应用程序相同的文件夹中。

于 2013-11-24T21:07:39.290 回答