символы unicode появляются как вопросительные знаки в консоли IntelliJ IDEA

Вы могли бы хотеть смотреть на MagicDraw или Визуальная Парадигма для UML. Оба выпуска сообщества предложения, которые, конечно, не охватывают полнофункциональный диапазон, но могут быть достаточными, если Вы хотите создать схемы только и не генерировать код или сделать полную разработку туда и обратно.

11
задан Mike Nakis 5 May 2015 в 22:54
поделиться

4 ответа

Правильно ли настроена кодировка файла ? Обратите внимание, что «Настройки | Кодировки файлов» используют UTF-8. Печать ♠ у меня работает, когда у меня кодировка IDE и все файлы установлены в UTF-8. После изменения кодировки может потребоваться перекомпиляция.

5
ответ дан 3 December 2019 в 06:22
поделиться

System.out использует кодировку по умолчанию базовой операционной системы, которая обычно является ISO-8859-1 или UTF-8. Первый - это то, что у меня с кодовой страницей 1252 под XP.

Это в окне CMD.EXE или внутри IDE?

2
ответ дан 3 December 2019 в 06:22
поделиться

Установлены ли на вашем компьютере соответствующие шрифты? Знак вопроса появляется, если у вас нет шрифтов для выводимых символов.

Кроме того, вы выводите, выполнив System.out.println ("<ваша строка>") ? Если это так, просто установка шрифтов должна работать.

Если вы пытаетесь записать в System.out из своей программы, это другое. Вы должны использовать OutputStreamWriter , который является потоком символов. Вы не можете просто писать в поток, ориентированный на байты, такой как OutputStream .

Найдите API и справочник классов для OutputStreamWriter и подклассов, таких как PrintWriter . Вы создаете его, задав языковой стандарт конструктора. Например,

PrintWriter pw = new PrintWriter (System.out, "UTF-8");

-1
ответ дан 3 December 2019 в 06:22
поделиться

Если вы в конечном итоге захотите напечатать широкий диапазон символов Юникода в стандартной командной строке Windows, придется немного поработать. Растровый шрифт по умолчанию не поддерживает символы, и приложениям обычно необходимо вызывать консольный API Unicode для их визуализации. Java этого не делает - сначала она кодирует символы в собственный набор символов (процесс с потерями), а затем генерирует их с помощью вызова ANSI. Если вам нужны кровавые подробности, вы можете прочитать это сообщение в блоге .

0
ответ дан 3 December 2019 в 06:22
поделиться
Другие вопросы по тегам:

Похожие вопросы: