Кодировка символов




Когда речь заходит о «тексте», вы, вероятно, ожидаете, что мы начнем обсуждать те символы, которые видим на экране. Но в действительности компьютеры имеют дело не с буквами и символами, а с битами и байтами. Любой фрагмент текста, который вы видите на экране, на самом деле представляет собой поток битов в определенной символьной кодировке. Существуют сотни различных символьных кодировок (http://www.iana.org/assignments/character-sets), часть которых оптимизирована для передачи текста на конкретных языках (например, русском, английском или китайском), в то время как другие кодировки могут использоваться для передачи текста на множестве языков. Кодировка имеет непосредственное отношение на позиции сайта в поисковых системах, позиции можно проверить на портале «Топвизор». Обобщенно говоря, кодировка символов представляет собой установку соответствия между буквами и символами, которые вы видите на экране, и той информацией, которая фактически загружается в память вашего компьютера и хранится на его жестком диске.

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

Тогда возникает вопрос: каким образом браузер определяет кодировку текста, передаваемого через Web в виде потока битов? Если у вас возник этот вопрос, то вы находитесь на правильном пути. Если вы знакомы с заголовками HTTP, то возможно, вам встречались заголовки наподобие следующего:
Content-Type: text/html; charset=»utf-8″
Вкратце говоря, этот заголовок сообщает о том, что Web-сервер «считает», что отсылает вам HTML-документ и что этот документ использует кодировку символов UTF-8. К сожалению, во всем этом «бульоне», который представляет собой World Wide Web, лишь немногие авторы действительно могут иметь контроль над своим HTTP-сервером. Возьмем, к примеру, Blogger (http://\vww.blogger.com): информационное наполнение создастся отдельными личностями, но управление сервером осуществляет компания Google. Поэтому стандарт HTML 4 и предоставил способ указания кодировки в документе HTML как таковом. Возможно, вам встречались и такие примеры:

Вкратце, такой заголовок указывает, что разработчики Web-страницы считают, что они создали HTML-документ, используя кодировку UTF-8.
Оба упомянутых подхода продолжают работать и в HTML5. Заголовок http — это предпочтительный метод, и он имеет приоритет перед тегом, если он вообще присутствует. Но нс каждый пользователь может определять заголовки HTTP, так что тегвсе еще не вышел из употребления. В действительности же, в HTML5 все существенно у простилось. Теперь заголовок выглядит так:

Это будет работать во всех браузерах.


Скачать Windows 7

Отправить ответ

Оставьте первый комментарий!

avatar
wpDiscuz