Лучшие вопросы
Таймлайн
Чат
Перспективы
Заменяющий символ
символ Юникода Из Википедии, свободной энциклопедии
Remove ads
Заменяющий символ � — в информатике символ, который используется, когда значение символа неизвестно или не может быть выражено в Юникоде.
Этот символ находится на позиции U+FFFD[1] в группе «Специальные символы». Он — самый последний символ базовой многоязычной плоскости (следующие позиции U+FFFE и U+FFFF не заняты символами, а используются для сообщения об ошибках)[2].
Remove ads
Начертание
Этот символ выглядит как чёрный ромб с вырезанным внутри вопросительным знаком. Это напоминает пиктограмму с вопросительным знаком, а он обозначает неизвестность, неопределённость. В шрифте Quivira по краям есть чёрная окантовка, отделённая от ромба. Это ещё больше делает символ похожим на пиктограмму.
Использование
Суммиров вкратце
Перспектива
Символ используется при отображении текстов, сконвертированных из других кодировок в Юникод для указания на то, что символ исходного текста не имеет эквивалента в Юникоде[2]. Это может произойти из-за неправильной настройки кодировки символов.
Допустим, у нас есть текстовый файл, который содержит немецкое слово für
в кодировке ISO 8859-1. Этот текстовый файл был передан по Интернету пользователю, у которого кодировка по умолчанию UTF-8.
Первый байт (0x66
) в пределах 0x00-0x7F, UTF-8 отображает его корректно в виде «f». Второй байт (0xFC
) — неподходящее значение для начала любого символа в UTF-8, поэтому на месте этого байта браузер отобразит заменяющий символ с целью предупредить пользователя о том, что что-то пошло не так. Третий байт (0x72
) также в пределах 0x00-0x7F, UTF-8 отображает его корректно в виде «r». И целое слово будет отображено как f�r
.
Текстовый редактор может отобразить заменяющий символ в UTF-8, и при отправке файла обратно, в ISO 8859-1 на месте этого символа получится бессвязное сочетание трёх символов: f�r
. Это произойдёт потому, что UTF-8 заменяющего символа — 0xEF 0xBF 0xBD
. 0xEF — ï, 0xBF — ¿, 0xBD — ½, а вместе — �.
В языке программирования Java позиция U+FFFD традиционно используется для обозначения NaN, что не соотносится со значением в Юникоде[2].
Remove ads
Примечания
Ссылки
Литература
Wikiwand - on
Seamless Wikipedia browsing. On steroids.
Remove ads