?во время печати символа сердца - PullRequest
5 голосов
/ 01 февраля 2012

Извините, что задали глупый вопрос. Мы пытаемся напечатать символ сердца из базы данных в файл Java XML.Но то же самое печатается как "?"не уверен, где я скучаю.Попробовал кодировку Юникод.На практике я попробовал это, используя основной метод.Пожалуйста, найдите образец класса Java.

public static void main(String[] args) {

    String t = "\u2665";
    String myUnicodeSymbol = "\u05D0";
    char hollowHeart = '\u2661';
    String hollowDiamond = "\u2662";
    String spade = "\u2660";
    String club = "\u2663";

    StringBuffer buffer = new StringBuffer("<HEAD>");
    buffer.append("<HEART>").append(hollowHeart).append("</HEART>");
    buffer.append("</HEAD>");
    System.out.println(t);
    System.out.println(buffer.toString());
}

Результат: -??

Не уверен, что мне не хватает.

Ответы [ 2 ]

7 голосов
/ 01 февраля 2012

Я думаю, что это зависит от настроек консоли, в которую попадает вывод.

Я скомпилировал и запустил ваш код в Eclipse и увидел символ сердца.Но если я запускаю программу из стандартной консоли Windows, я вижу "?"вместо символа сердца тоже.

Однако вам нужно изменить стандартные настройки в Eclipse.

Window -> Preferences -> General -> Workspace -> set "Text file encoding" to "Other: UTF-8"
0 голосов
/ 01 февраля 2012

System.out.println не поддерживает, я думаю, символы Unicode в MAC.

Ссылка От MACWORLD

Попробуйте это

PrintStream out = new PrintStream (System.out, true, "UTF-8");

out.println (т);

Вам также нужно будет сгенерировать исключение UnsupportedEncodingException или обработать его.

...