5

Я уже давно вижу эти странные символы, и мне любопытно, что они собой представляют и почему они появляются. Иногда они появляются так часто на одной странице, что запись не поддается расшифровке. Символы отображаются так же, как и ниже в Firefox, но в Internet Explorer они выглядят как маленькие квадраты.

Вот пример:

  1. Кто они такие?
  2. Как мне от них избавиться?

4 ответа4

9

В общем, Firefox отображает все символы Unicode, для которых он не может найти глиф в ваших шрифтах, как блок, содержащий код символа. Если вы идете, например. китайский веб-сайт, и у вас не установлены китайские шрифты, вы получите только маленькие коробочки.

Однако этот конкретный символ на скриншоте - � U+FFFD ЗАМЕНА ХАРАКТЕР. (Я получаю форму ромба с вопросительным знаком; Вы также можете получить квадратную коробку или просто знак вопроса.)

Если кто-то намеренно не набрал этот символ, что маловероятно (за исключением того, что я только что делал это выше), U+FFFD означает, что кто-то испортил их кодировки в некоторой точке вдоль линии, и либо:

  • пытался закодировать символ в кодировку, которая его не поддерживает, например, если кто-то пытался отправить китайский символ в кодировке Latin-1, или

  • служил закодированной последовательности байтов как UTF-8, когда на самом деле это что-то другое.

На конкретном скриншоте это явная проблема, когда «умные цитаты» были представлены в виде одной кодовой страницы Windows размером 1252 байта. Тогда данные, вероятно, были ошибочно отнесены к UTF-8.

Если неправильное указание связано с тем, что ваш браузер неправильно угадывает кодировку (для глупых страниц, которые не обозначают свои кодировки), вы можете исправить это, перейдя в View-> Encoding и угадав правильную. Там, где неправильное распределение связано с собственной обработкой строк веб-сайтом, вы ничего не можете с этим поделать. К сожалению, многие веб-сайты неправильно используют кодировки, особенно те, которые написаны на невежественных языках Unicode, таких как PHP, classic-ASP, Ruby и JSP (несмотря на нативные строки Java, JSP/Servlet довольно плохо работает с кодировками).

4

Они ЮНИКОДНЫЕ МЕСТОРОЖДЕНИЯ; число представляет кодовую точку Unicode для глифа, который отсутствует в доступных шрифтах. Используйте шрифт, который охватывает больше необходимых символов Юникода, и эти поля будут заменены хорошими международными символами.

Обратите внимание, что это также может быть вызвано тем, что браузер (или другое приложение) принимает неправильную кодировку документа. Например, если в настройках кодировки символов указано, что документ следует интерпретировать как кириллическую (русскую) кодировку, а документ на самом деле кодируется как китайский, то вы получите неправильные глифы там, где карты символов перекрываются, и глифы-заполнители (поля с номерами), где карты персонажей не перекрываются.

3

Это символы Юникода ; Я задал этот вопрос с печатью на суперпользователе.

2

Символы, которые представляет символ, представляют собой умные кавычки ( и ), неправильно введенные слишком энергичным копированием и вставкой пальца. Или, скорее, они используются такими программами, как Microsoft Word, для представления умных цитат. Либо обе кавычки должны быть " или первый должен быть “ а второй ” ,

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .