Java代码在windows上显示不正确(包含希腊语句子)

Java代码在windows上显示不正确(包含希腊语句子),java,Java,我刚刚为我的一个朋友写了一个程序,它包含一些希腊文本,在println上。我在Linux上用UTF-8编码编写了这个文件,但是当他在Eclipse(Windows)上打开它时,没有一个希腊字母显示正确。 有什么办法可以让这一切顺利进行吗? 我确实记得windows的希腊代码页是737,但是我如何告诉编译器使用该代码页呢? 谢谢:)通过构建链获取编码字符串很困难,因为 每一个接触到源文件的程序都必须理解 并保留utf8编码。有太多的共同点 英语世界的工具在这方面不可靠 尊敬 我的解决方案是使用as

我刚刚为我的一个朋友写了一个程序,它包含一些希腊文本,在
println
上。我在Linux上用UTF-8编码编写了这个文件,但是当他在Eclipse(Windows)上打开它时,没有一个希腊字母显示正确。 有什么办法可以让这一切顺利进行吗? 我确实记得windows的希腊代码页是737,但是我如何告诉编译器使用该代码页呢?
谢谢:)

通过构建链获取编码字符串很困难,因为 每一个接触到源文件的程序都必须理解 并保留utf8编码。有太多的共同点 英语世界的工具在这方面不可靠 尊敬

我的解决方案是使用ascii编码,允许UTF8标记 保存到源文件中,并将UTF8解码为unicode
运行时。

我猜您的朋友正在从命令行运行程序,而Windows正在从那里的UTF-8字节输出垃圾

这是因为cmd.exe在默认情况下没有设置为UTF-8代码页,以便与Windows代码页1252向后兼容

要将cmd.exe设置为使用UTF-8,请使用以下命令:

chcp 65001
您可能还需要将字体更改为Lucida Console之类的字体

这实际上是以下内容的副本:

更新

要在Eclipse中设置当前文件的编码,必须转到编辑->设置编码

通常,在共享数据时,您会将其捆绑到Eclipse项目中,以便将编码等信息与源文件一起保存。Eclipse从称为“容器”的东西继承编码,而不是使用试探法来确定文件的正确编码

我不能确切地告诉您为什么它不是默认的UTF-8,也许它也默认为Windows代码页,但是在项目之外的Eclipse中编辑文件是不常见的


如果您使用Eclipse进行开发,请将源代码放入项目并共享,或者使用可以自动处理编码检测的文本编辑器,如记事本++或升华文本。

UTF8编码的文件应该可以正常工作。这可能是一个显示问题,也可能是告诉目标编辑器使用UTF8的问题。即使这是一个cmd问题(很可能是),为什么Eclipse中也会出现这种情况?我的意思是,Eclipse应该能够打开一个文件并正确显示它,无论它来自何处?他是导入了你的项目还是制作了一个新项目?这里有很多可能性。让您的朋友查看项目属性并确保编码设置正确。文件是直接从我的机器里拿出来的。你说他打开了“文件”。你是说他引进了这个项目?这不是一个项目。我在Linux上的Atom上编写了它,他正在Eclipse上以单个Java文件的形式打开它。不导入它,打开为。