Как использовать специальные символы в Java/Eclipse

Как я могу использовать / отображать такие символы, как ♥, ♦, ♣ или ♠ в Java/Eclipse?

Когда я пытаюсь использовать их напрямую, например, в исходном коде, Eclipse не может сохранить файл.

Что я могу сделать?

Изменить: Как я могу найти escape-последовательность Unicode?

8 ответов

Решение

Проблема в том, что используемые вами символы не могут быть представлены в кодировке, для которой установлен файл (Cp1252). На мой взгляд, у вас есть два варианта:

Вариант 1. Изменить кодировку. Согласно IBM, вам следует установить кодировку UTF-8. Я верю, что это решит вашу проблему.

  • Установите глобальную настройку кодировки текстового файла Workbench > Editors на "UTF-8".
  • Если требуется кодировка, отличная от UTF-8, установите кодировку для отдельного файла, а не с помощью глобальной настройки предпочтений. Для этого используйте пункт меню "Файл"> "Свойства"> "Информация", чтобы задать кодировку для отдельного файла.

Вариант 2. Удалите символы, которые не поддерживаются кодировкой символов "Cp1252". Вы можете заменить неподдерживаемые символы на escape-последовательности Unicode (\uxxxx). Хотя это позволит вам сохранить ваш файл, это не обязательно является лучшим решением.

Для символов, которые вы указали в своем вопросе, здесь есть escape-последовательности Unicode:

♥ \u2665
♦ \u2666
♣ \u2663
♠ \u2660

В Затмении:

  1. Перейти к окну -> Настройки -> Общие -> Рабочая область -> TextFileEncoding
  2. Установите его в UTF-8

Это можно решить, установив кодировку в eclipse:

1-й способ:

В меню выберите " Файл" -> "Свойства", а затем в разделе "Кодировка текстового файла": выберите "Другое радио", выберите "UTF-8" из списка "-" и, наконец, нажмите кнопку "ОК".

2-й способ:

Щелкните правой кнопкой мыши по конкретному файлу (скажем, Test.java) -> Свойства. В разделе " Кодировка текстового файла ": выберите "Другое радио", выберите "UTF-8" из списка "-" и, наконец, нажмите кнопку "ОК".

3-й способ:

Если вы хотите внести это изменение для всего вашего проекта, перейдите в Window -> Preferences -> General -> Workspace. В разделе " Кодировка текстового файла ": выберите "Другое радио", выберите "UTF-8" из списка "-" и, наконец, нажмите кнопку "ОК".

Поиск escape-последовательности Юникода: см. Эти графики Юникода. Ваши персонажи в Разном. Символы диаграммы, и выше.

Расширение немного на ответ @Joe Lencioni

Вы можете использовать плагин AnyEdit Eclipse (устанавливается из торговой площадки Eclipse) для простого преобразования текста Unicode в экранированные символы Java Unicode:

  • Выберите символ / текст с не-ASCII символами
  • щелкните правой кнопкой мыши
  • Преобразовать> в нотацию Unicode

Небольшое предостережение заключается в том, что AnyEdit сначала хочет сохранить файл, что явно запрещено Eclipse, пока вы не исправите свой текст.

Либо измените кодировку на ту, которая будет справляться, например, UTF-8, либо найдите соответствующий номер Unicode и используйте escape-последовательность \ uxxxx для ее представления.

Меню Windows -> Настройки -> Общие (разверните) -> Рабочая область (щелкните по нему). Ищите поле "Кодировка текстового файла". По умолчанию будет "Cp1252". Измените радио, чтобы выбрать другое, и выберите "UTF-8" из поля со списком.

Вы можете решить эту проблему, изменив настройки региона, если вы используете Windows 11.

Взгляните на этот полный подробный ответ: /questions/44006789/kak-podderzhivat-kodirovku-utf-8-v-eclipse/66323060#66323060

Другие вопросы по тегам