Eclipse UTF-8奇怪的字符

时间:2013-06-02 10:00:52

标签: java eclipse swing encoding utf-8

我正在使用Eclipse IDE在java中编写程序,我想用希腊语写我的评论。所以我将编码从Window-> Preferences-> General-> Content Types-> Text-> Java Source File改为UTF-8。我的代码中的注释是可以的,但是当我运行我的程序时,一些单词包含奇怪的字符,例如SanGerm nSanGermán)。如果我将编码更改为ISO-8859-1,当我运行程序时所有都可以,但我的代码中的注释不是(奇怪的字符!)。那么,它出了什么问题?

编辑:我的程序在java swing中,UTF-8的奇怪字符是JTable单元格中的字符串。

编辑(2):好的,我解决了我的问题我保留了java文件的UTF-8编码,但我改变了字符串的编码。 String k = new String(myStringInByteArray,ISO-8859-1);

1 个答案:

答案 0 :(得分:2)

这很可能是由于编译器在读取源时未使用正确的字符编码。在系统之间移动时,这是一个非常常见的错误来源。

解决它的典型方法是使用纯ASCII(在Windows 1252和UTF-8中都相同)和“\ u1234”编码方案(unicode字符0x1234),但处理起来有点麻烦。 Eclipse(我上次看过)并没有透明地支持它。

属性文件编辑器确实,因此一个合理的建议是,您可以将所有字符串放在属性文件中,并在需要显示时将字符串作为资源加载。这也是Locales的一个很好的介绍,当你想让你的应用程序能够说多种语言时,它是必需的。