Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/342.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ionic-framework/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
使用java在eclipse中使用unicode显示棋子_Java_Eclipse_Unicode_Chess - Fatal编程技术网

使用java在eclipse中使用unicode显示棋子

使用java在eclipse中使用unicode显示棋子,java,eclipse,unicode,chess,Java,Eclipse,Unicode,Chess,我只是想用java在eclipse中显示一些unicode国际象棋符号,但是它只是打印出随机的矩形,除非国际象棋最近在风格上有了根本性的改变——我不认为这是我想要的。非常感谢您的帮助 我的代码: import java.io.PrintStream; import java.io.UnsupportedEncodingException; public class ChessSymbols { public static void main (String [ ] args)throws Un

我只是想用java在eclipse中显示一些unicode国际象棋符号,但是它只是打印出随机的矩形,除非国际象棋最近在风格上有了根本性的改变——我不认为这是我想要的。非常感谢您的帮助

我的代码:

import java.io.PrintStream;
import java.io.UnsupportedEncodingException;

public class ChessSymbols {
public static void main (String [ ] args)throws
UnsupportedEncodingException {
        String unicodeMessage =
                        "\u2654 " + // white king
                        "\u2655 " + // white queen
                        "\u2656 " + // white rook
                        "\u2657 " + // white bishop
                        "\u2658 " + // white knight
                        "\u2659 " + // white pawn
                        "\n" +
                        "\u265A " + // black king
                        "\u265B " + // black queen
                        "\u265C " + // black rook
                        "\u265D " + // black bishop
                        "\u265E " + // black knight
                        "\u265F " + // black pawn
                        "\n" ;
        PrintStream out = new PrintStream (System.out, true , "UTF8" );
        out.println(unicodeMessage);
}
}

我试过你的代码,它在我的Linux上运行正常。 从裸壳和Eclipse中进行了尝试。
这不是Java问题,而是控制台字符集问题。您必须检查控制台接受的编码,并确保它是UTF8。Eclipse不应该考虑这一点。

如果您使用Eclipse运行配置来运行代码,则需要设置控制台对话框的字符编码。您可以通过打开运行配置、选择有问题的Java运行命令、单击Common选项卡来实现这一点(我正在检查Indigo,我对早期版本不太确定),在右侧有一种方法可以选择控制台的字符编码(对于您的程序来说,这很可能是UTF8)


我通过在搜索帮助对话框中键入“控制台编码”发现了这一点。

在Eclipse中,单击运行->运行配置。->公共选项卡->编码->其他:UTF-8:这在这里修复了它

我正在Windows 7上运行版本:Helios Service Release 2,构建id:20110218-091

您也可以尝试使用命令行


这是Eclipse控制台的一个问题。请参阅本文,您需要编辑eclipse.ini-

字体很可能没有您需要的字形。
尝试更改控制台的字体。

@l10i那么如何检查控制台接受的编码?我通过添加“-Dfile.encoding=UTF-8”更改了eclipse.ini配置文件。我认为这将允许我在控制台中使用unicode。谢谢。你设置的是文件的编码。这不是我们正在处理的编码。我们需要控制台的“显示”编码。您的操作系统是什么,仅供初学者使用?@l10i Windows 64位。我已经试过上面的方法了,但没有效果。我还尝试通过删除我在.ini中所做的编辑来实现这一点,只是通过run config实现了这一点,同时也使用了两者。没什么区别。有什么想法吗?让我们一步一步地分析这个问题。当从裸Windows shell运行时,Java类是否生成正确的字符?至少我们可以确定Eclipse是否对此有参与。@l10i k,只是尝试了一下,没有在shell中工作。这是否意味着这是windows的问题?谢谢你这么说。Windows,真是一团糟+1用于链接。我指的是您提供的链接内容所显示的内容。@l10i-是的,我知道:),很抱歉,这比使用菜单更混乱。@Adel谢谢你,伙计,尝试过这个,但没有解决问题:(