2017-09-16 1 views
2

Ich versuche, ein Kartenspiel auf system.out zu drucken, mit den Anzügen, die durch ♥, ♦, ♣ und represented dargestellt werden. Ich habe die Zeichen in meinen Code kopieren kleistert:Drucken von UTF-8 in Java

deck.offer(new Card(v, (i == 0) ? "\u2666" : (i == 1) ? "♦" : (i == 2) ? "♣" : "♠")); 

Wie Sie sehen können, habe ich versucht, die Symbole zu entkommen und sie direkt in meinen Code einfügen. Eclipse (die IDE, die ich verwende) gab mir die Möglichkeit, die Kodierung der .java-Datei in UTF-8 zu ändern, aber meine System.out.print() zeigt immer noch "?" als die Symbole.

Wie drucke ich ♥, ♦, ♣ und ♠ zum Terminal?

EDIT: Oleski beantwortete meine Frage unten. Vielen Dank!

+0

Welches Terminal verwenden Sie? Vielleicht müssen Sie Ihr Terminal auf UTF-8 konfigurieren. Schau in den Optionen nach. –

+0

Sie sollten Ihre Konsole/Ihr Terminal überprüfen, um zu sehen, welche Codepages es unterstützt. EG PC473 Die ursprüngliche IBM Codepage enthält diese Zeichen, jedoch unter verschiedenen Codes ... –

+1

Mögliches Duplikat von [Sonderzeichen mit System.out.println anzeigen] (https://stackoverflow.com/questions/10933620/display-special-) characters-using-system-out-println) –

Antwort

0

Es ist möglich, dass das Terminal, auf dem die Zeichen angezeigt werden, sie nicht als UTF-8 interpretiert. Das heißt, die Zeichen sind in UTF-8 korrekt codiert, aber das Terminal ist nicht so eingestellt, dass sie als UTF-8 interpretiert werden.

+0

Dies ist das Problem. Eine schnelle duckduckgo Suche brachte mich auf diese Seite (https://stackoverflow.com/questions/17385818/eclipse-character-encoding#17385876), die mein Problem behob. Vielen Dank! Auch für jeden, der versucht, das Menü Run Configurations zu finden, ist es nicht unter Einstellungen. Es ist im Run-Menü. –