Как использовать специальные символы в Java / Eclipse
Вопрос
Как я могу использовать / отображать символы типа ♥, ♦, ♣ или ♠ в Java / Eclipse?
Когда я пытаюсь использовать их напрямую, напримерв исходном коде Eclipse не удается сохранить файл.
Что я могу сделать?
Редактировать:Как я могу найти управляющую последовательность Unicode?
Решение
Проблема в том, что символы, которые вы используете, не могут быть представлены в кодировке, в которой у вас установлен файл (Cp1252).Насколько я понимаю, у вас, по сути, есть два варианта:
Вариант 1. Измените кодировку. По данным IBM, вы должны установить кодировку в UTF-8.Я верю, что это решило бы вашу проблему.
- Установите в настройках глобальной кодировки текстового файла Workbench > Editors значение "UTF-8".
- Если требуется кодировка, отличная от UTF-8, установите кодировку для отдельного файла, а не используйте глобальную настройку предпочтений.Для этого используйте пункт меню Файл > Свойства > Информация, чтобы установить кодировку для отдельного файла.
Вариант 2. Удалите символы, которые не поддерживаются кодировкой символов "Cp1252". Вы можете заменить неподдерживаемые символы на Экранирующие последовательности в Юникоде (\uxxxx).Хотя это позволило бы вам сохранить ваш файл, это не обязательно лучшее решение.
Для символов, которые вы указали в своем вопросе, вот экранирующие последовательности Unicode:
♥ \u2665
♦ \u2666
♣ \u2663
♠ \u2660
Другие советы
В Затмении:
- Перейдите в окно -> Настройки -> Общие -> Рабочая область -> TextFileEncoding
- Установите для него значение UTF-8
Это можно решить, установив кодировку в eclipse:
1-й способ:
В меню выберите Файл-> Свойства а затем в "Кодировка текстового файла" Раздел:Выберите Другое радио, выберите UTF-8 из списка -> Наконец, нажмите кнопку OK
2-й способ:
Щелкните правой кнопкой мыши на определенном файле (скажем, Test.java) -> Свойства.В Кодировка текстового файла Раздел:Выберите Другое радио, выберите UTF-8 из списка -> Наконец, нажмите кнопку OK
3-й способ:
Если вы хотите внести это изменение во весь свой проект, перейдите по ссылке Окно-> Настройки-> Общие-> Рабочая область .В Кодировка текстового файла Раздел:Выберите Другое радио, выберите UTF-8 из списка -> Наконец, нажмите кнопку OK
Либо измените свою кодировку на ту, которая будет работать, напримерUTF-8, или найдите соответствующий номер в Юникоде и используйте escape-последовательность \uxxxx для его представления.
Поиск управляющей последовательности в Юникоде:видишь эти Диаграммы в Юникоде.Ваши персонажи есть в разделе Разное.Диаграмма символов, от 2660 и выше.
Немного расширяю ответ @Joe Lencioni
Вы можете использовать AnyEdit Eclipse plugin (можно установить из Eclipse marketplace), чтобы легко конвертировать текст в формате Unicode в Java-экранирование в формате Unicode:
- Выберите символ / текст, содержащий символы, отличные от ASCII
- щелкните правой кнопкой мыши
- Преобразовать > В систему обозначений Unicode
Одно небольшое предостережение заключается в том, что AnyEdit хочет сначала сохранить файл, который, очевидно, запрещен Eclipse, пока вы не исправите свой текст.
Меню Windows –> Настройки –> Общие (разверните его) –> Рабочая область (нажмите на нее).Найдите поле “Кодировка текстового файла”.По умолчанию будет использоваться "Cp1252".Измените радио на другое и выберите "UTF-8" в поле со списком.