2010-11-22 58 views
4
// Fahrenheit (°F) 

我有上面的代码在我的java代码中注释掉了,但是我得到了“用于编码UTF-8的无法映射的字符”。我该如何解决?关于无法映射的字符进行编码的编译错误UTF-8

+1

你为什么要使用这种字符的实际代码块? – 2010-11-22 06:06:36

+0

你实际上是在放这个代码,我们能看到它上面和下面的代码吗? – 2010-11-22 06:21:06

+0

这只是你的方法中的一个java注释,没有什么奇怪的 – user339108 2010-11-22 06:40:23

回答

6

您需要使用-encoding标志

javac -encoding UTF-8 myclass.java 

您也可以考虑使UTF-8系统的默认编码到指定的javac命令行编码,这样你就不必指定它。

+0

我应该如何将它设置为系统级设置 – user339108 2010-11-22 06:39:46

+0

这取决于你的操作系统。如果您正在运行Linux,则可以在您的语言环境中将其设置为使用UTF-8作为系统默认值。如果你正在运行Windows,你可以检查区域和语言选项,但我不认为有办法让它成为你的系统默认。 :/我想你必须结束设置一个JAVA特定的环境变量。我不记得它是什么,但Google说它是LANG – OmnipotentEntity 2010-11-22 06:57:38

+0

我收到UTF-8的这个错误,这是令我困惑的。 >>用于编码的不可映射字符UTF-8 – user339108 2010-11-22 07:08:30

2

对于ISO-8859-1中的大量java文件,存在相同的编译器错误。一个一个打开是不切实际的。所以,这里有一个快速的修复(using recode):

find -name '*.java' -exec recode Latin-1..UTF-8 {} \; 
相关问题