ANTLRWorks 1.4.3 не может отображать и отображать символы ASCII - PullRequest
2 голосов
/ 08 декабря 2011

Как новая разработка к моему предыдущему вопросу ( ANTLRWorks 1.4.3 не может правильно читать символы расширенного ASCII ), я создал простой текстовый файл с помощью шестнадцатеричного редактора:

' ' '£' '°' 'ç'

Или в шестнадцатеричном виде:

27 A0 27 20 27 A3 27 20 27 B0 27 20 27 E7 27

Полученный файл отлично читается в Notepad ++.После открытия в ANTLRWorks 1.4.3 (расширенные) символы ASCII отображаются в виде квадратных полей.После сохранения файла после добавления и удаления пробела в конце строки шестнадцатеричное представление файла выглядит следующим образом:

27 3F 20 27 A3 27 20 27 B0 27 20 27 3F

По какой-то причине начальный пробел (20) между апострофами был искажен взнак вопроса (3F) и специальный символ c с символом cedilla (E7) и следующий за ним апостроф заменены знаком вопроса.

Кажется, что присутствие расширенных символов ASCII каким-то образом приводит к тому, что все идет ужасно неправильно,Может ли кто-нибудь здесь повторить эту проблему и / или предложить возможную причину и решение?

Заранее спасибо.

1 Ответ

2 голосов
/ 08 декабря 2011

Вместо этого вы можете использовать экранирование Unicode. Скажем, вы хотите сопоставить знак английского фунта, вы должны сделать:

PoundSign : '\u00A3';

вместо:

PoundSign : '£';

Они (должны) соответствовать одному и тому же персонажу, и первый вполне может быть искаженным.

...