Html кодировки: Кодировка HTML-страницы — Структура HTML-документа — HTML Academy

Содержание

Кодировка HTML уроки для начинающих академия

❮ Назад Дальше ❯


Для правильного отображения HTML-страницы веб-обозреватель должен знать, какой набор символов (кодировка) следует использовать.


Что такое кодировка символов?

ASCII был первым стандартом кодировки символов (также называемым набором символов). ASCII определены 128 различных буквенно-цифровых символов, которые могут быть использованы в Интернете: цифры (0-9), английские буквы (a-Z), и некоторые специальные символы, как! $ +-() @ < >.

ANSI (Windows-1252) был оригинальный набор символов Windows, с поддержкой 256 различных кодов символов.

ISO-8859-1 был стандартным набором символов для HTML 4. Этот набор символов также поддерживает 256 различные коды символов.

Так как ANSI и ISO-8859-1 были настолько ограничены, HTML 4 также поддерживал UTF-8.

UTF-8 (Юникод) охватывает почти все символы и символы в мире.

Кодировка символов по умолчанию для HTML5 — UTF-8.


Атрибут HTML-кодировки

Для правильного отображения HTML-страницы веб-обозреватель должен знать кодировку, используемую на странице.

Это указано в теге <meta> :

Для HTML4:

<meta http-equiv=»Content-Type» content=»text/html;charset=ISO-8859-1″>

Для HTML5:

<meta charset=»UTF-8″>


Если браузер обнаруживает ISO-8859-1 на веб-странице, по умолчанию используется ANSI, так как ANSI идентичен ISO-8859-1 за исключением того, что ANSI имеет 32 дополнительных символов.



Различия между наборами символов

В следующей таблице показаны различия между наборами символов, описанными выше:

NumbASCIIANSI8859UTF-8Описание
32space
33!!!!exclamation mark
34««««quotation mark
35####number sign
36$$$$dollar sign
37%%%%percent sign
38&&&&ampersand
39apostrophe
40((((left parenthesis
41))))right parenthesis
42****asterisk
43++++plus sign
44,,,,comma
45hyphen-minus
46....full stop
47/
/
//solidus
480000digit zero
491111digit one
502222digit two
513333digit three
524444digit four
535555digit five
546666digit six
557777digit seven
568888digit eight
579999digit nine
58::::colon
59;;;;semicolon
60<<<<less-than sign
61====equals sign
62>>>>greater-than sign
63????question mark
64@@@@commercial at
65AAAALatin capital letter A
66BBBBLatin capital letter B
67CCCCLatin capital letter C
68DDDDLatin capital letter D
69EEEELatin capital letter E
70FFFFLatin capital letter F
71G
G
GGLatin capital letter G
72HHHHLatin capital letter H
73IIIILatin capital letter I
74JJJJLatin capital letter J
75KKKKLatin capital letter K
76LLLLLatin capital letter L
77MMMMLatin capital letter M
78NNNNLatin capital letter N
79OOOOLatin capital letter O
80PPPPLatin capital letter P
81QQQQLatin capital letter Q
82RRRRLatin capital letter R
83SSSSLatin capital letter S
84TTTTLatin capital letter T
85UUUULatin capital letter U
86VVVVLatin capital letter V
87WWWWLatin capital letter W
88XXXXLatin capital letter X
89YYYYLatin capital letter Y
90ZZZZLatin capital letter Z
91[[[[left square bracket
92\\\\reverse solidus
93]] ]]right square bracket
94^^^^circumflex accent
95____low line
96````grave accent
97aaaaLatin small letter a
98bbbbLatin small letter b
99ccccLatin small letter c
100ddddLatin small letter d
101eeeeLatin small letter e
102ffffLatin small letter f
103ggggLatin small letter g
104hhhhLatin small letter h
105iiiiLatin small letter i
106jjjjLatin small letter j
107kkkkLatin small letter k
108llllLatin small letter l
109mmmmLatin small letter m
110nnnnLatin small letter n
111ooooLatin small letter o
112ppppLatin small letter p
113qqqqLatin small letter q
114rrrrLatin small letter r
115ssssLatin small letter s
116ttttLatin small letter t
117uuuuLatin small letter u
118vvvvLatin small letter v
119wwwwLatin small letter w
120xxxxLatin small letter x
121yyyyLatin small letter y
122zzzzLatin small letter z
123{{{{left curly bracket
124||||vertical line
125}}}}right curly bracket
126~~~~tilde
127DEL    
128 €  euro sign
129 NOT USED
130 ‚  single low-9 quotation mark
131 ƒ  Latin small letter f with hook
132 „  double low-9 quotation mark
133 …  horizontal ellipsis
134 †  dagger
135 ‡  double dagger
136 ˆ  modifier letter circumflex accent
137 ‰  per mille sign
138 Š  Latin capital letter S with caron
139 ‹  single left-pointing angle quotation mark
140 Œ  Latin capital ligature OE
141 NOT USED
142 Ž  Latin capital letter Z with caron
143 NOT USED
144 NOT USED
145 ‘  left single quotation mark
146 ’  right single quotation mark
147 “  left double quotation mark
148 ”  right double quotation mark
149 •  bullet
150 –  en dash
151 —  em dash
152 ˜  small tilde
153 ™  trade mark sign
154 š  Latin small letter s with caron
155 ›  single right-pointing angle quotation mark
156 œ  Latin small ligature oe
157 NOT USED
158 ž  Latin small letter z with caron
159 Ÿ  Latin capital letter Y with diaeresis
160    no-break space
161 ¡¡¡inverted exclamation mark
162 ¢¢¢cent sign
163 £££pound sign
164 ¤¤¤currency sign
165 ¥¥¥yen sign
166 ¦¦¦broken bar
167 §§§section sign
168 ¨¨¨diaeresis
169 ©©©copyright sign
170 ªªªfeminine ordinal indicator
171 «««left-pointing double angle quotation mark
172 ¬¬¬not sign
173 ­­
­
soft hyphen
174 ®®®registered sign
175 ¯¯¯macron
176 °°°degree sign
177 ±±±plus-minus sign
178 ²²²superscript two
179 ³³³superscript three
180 ´´´acute accent
181 µµµmicro sign
182 pilcrow sign
183 ···middle dot
184 ¸¸¸cedilla
185 ¹¹¹superscript one
186 ºººmasculine ordinal indicator
187 »»»right-pointing double angle quotation mark
188 ¼¼¼vulgar fraction one quarter
189 ½½½vulgar fraction one half
190 ¾¾¾vulgar fraction three quarters
191 ¿¿¿inverted question mark
192 ÀÀÀLatin capital letter A with grave
193 ÁÁÁLatin capital letter A with acute
194 ÂÂÂLatin capital letter A with circumflex
195 ÃÃÃLatin capital letter A with tilde
196 ÄÄÄLatin capital letter A with diaeresis
197 ÅÅÅLatin capital letter A with ring above
198 ÆÆÆLatin capital letter AE
199 ÇÇÇLatin capital letter C with cedilla
200 ÈÈÈLatin capital letter E with grave
201 ÉÉÉLatin capital letter E with acute
202 ÊÊÊLatin capital letter E with circumflex
203 ËËËLatin capital letter E with diaeresis
204 ÌÌÌLatin capital letter I with grave
205 Í ÍÍLatin capital letter I with acute
206 ÎÎÎLatin capital letter I with circumflex
207 ÏÏÏLatin capital letter I with diaeresis
208 ÐÐÐLatin capital letter Eth
209 ÑÑÑLatin capital letter N with tilde
210 ÒÒÒLatin capital letter O with grave
211 ÓÓÓLatin capital letter O with acute
212 ÔÔÔLatin capital letter O with circumflex
213 ÕÕÕLatin capital letter O with tilde
214 ÖÖÖLatin capital letter O with diaeresis
215 ×××multiplication sign
216 ØØØLatin capital letter O with stroke
217 ÙÙÙLatin capital letter U with grave
218 ÚÚÚLatin capital letter U with acute
219 ÛÛÛLatin capital letter U with circumflex
220 ÜÜÜLatin capital letter U with diaeresis
221 ÝÝÝLatin capital letter Y with acute
222 ÞÞÞLatin capital letter Thorn
223 ßßßLatin small letter sharp s
224 àààLatin small letter a with grave
225 áááLatin small letter a with acute
226 âââLatin small letter a with circumflex
227 ãããLatin small letter a with tilde
228 äääLatin small letter a with diaeresis
229 åååLatin small letter a with ring above
230 æææLatin small letter ae
231 çççLatin small letter c with cedilla
232 èèèLatin small letter e with grave
233 éééLatin small letter e with acute
234 êêêLatin small letter e with circumflex
235 ëëëLatin small letter e with diaeresis
236 ìììLatin small letter i with grave
237 íííLatin small letter i with acute
238 îîîLatin small letter i with circumflex
239 ïïïLatin small letter i with diaeresis
240 ðððLatin small letter eth
241 ñññLatin small letter n with tilde
242 òòòLatin small letter o with grave
243 óóóLatin small letter o with acute
244 ôôôLatin small letter o with circumflex
245 õõõLatin small letter o with tilde
246 öööLatin small letter o with diaeresis
247 ÷÷÷division sign
248 øøøLatin small letter o with stroke
249 ùùùLatin small letter u with grave
250 úúúLatin small letter u with acute
251 ûûûLatin small letter with circumflex
252 üüüLatin small letter u with diaeresis
253 ýýýLatin small letter y with acute
254 þþþLatin small letter thorn
255 ÿÿÿLatin small letter y with diaeresis


Набор символов ASCII

ASCII использует значения от 0 до 31 (и 127) для управляющих символов.

ASCII использует значения от 32 до 126 для букв, цифр и символов.

ASCII не использует значения от 128 до 255.


Набор символов ANSI (Windows-1252)

ANSI идентичен ASCII для значений от 0 до 127.

ANSI имеет собственный набор символов для значений от 128 до 159.

ANSI идентичен UTF-8 для значений от 160 до 255.


Кодировка ISO-8859-1

8859-1 идентичен ASCII для значений от 0 до 127.

8859-1 не использует значения от 128 до 159.

8859-1 идентичен UTF-8 для значений от 160 до 255.


Кодировка UTF-8

UTF-8 идентичен ASCII для значений от 0 до 127.

UTF-8 не использует значения от 128 до 159.

UTF-8 идентичен ANSI и 8859-1 для значений от 160 до 255.

UTF-8 продолжается от значения 256 с более чем 10 000 различных символов.

Для более пристального взгляда, изучите наш полный набор символов HTML.

❮ Назад Дальше ❯

HTML — кодировки символов — CoderLessons.com

Кодировка символов – это метод преобразования байтов в символы. Чтобы правильно проверить или отобразить документ HTML, программа должна выбрать правильную кодировку символов.

Наиболее распространенным набором символов или кодировкой символов, используемой на компьютерах, является ASCII – американский стандартный код для обмена информацией , и это, вероятно, наиболее широко используемый набор символов для электронного кодирования текста.

Кодировка ASCII поддерживает только прописные и строчные буквы латинского алфавита, цифры 0-9 и некоторые дополнительные символы, которые в сумме составляют 128 символов. Вы можете взглянуть на полный набор печатных символов ASCII

Тем не менее, во многих языках используются либо латинские символы с акцентом, либо совершенно разные алфавиты. ASCII не обращается к этим символам; поэтому вам нужно узнать о кодировках символов, если вы хотите использовать любые символы, не входящие в ASCII.

Международная организация стандартов создала ряд наборов символов для работы с различными национальными символами. Для документов на английском и большинстве других западноевропейских языков используется широко поддерживаемая кодировка ISO-8859-1.

Вот список Наборов символов, используемых во всем мире вместе с их описанием.

Sr.No Набор символов и описание
1

ISO-8859-1

Латинский алфавит часть 1

Покрытие Северной Америки, Западной Европы, Латинской Америки, Карибского бассейна, Канады, Африки

2

ISO-8859-2

Латинский алфавит часть 2

Покрытие Восточной Европы

3

ISO-8859-3

Латинский алфавит часть 3

Покрытие SE Europe, эсперанто, разные другие

4

ISO-8859-4

Латинский алфавит часть 4

Покрытие Скандинавия / Прибалтика (и другие, не входящие в ISO-8859-1)

5

ISO-8859-5

Латиница / кириллица часть 5

6

ISO-8859-6

Латиница / арабский алфавит часть 6

7

ISO-8859-7

Латинский / греческий алфавит часть 7

8

ISO-8859-8

Латиница / иврит алфавит часть 8

9

ISO-8859-9

Латинский 5 алфавит часть 9

То же, что ISO-8859-1 за исключением того, что турецкие символы заменяют исландские

10

ISO-8859-10

Латинская 6 Латинская 6 Лапландская, скандинавская и эскимосская

11

ISO-8859-15

То же, что ISO-8859-1, но с добавлением большего количества символов

12

ISO-2022-JP

Латиница / японский алфавит часть 1

13

ISO-2022-JP-2

Латинский / японский алфавит часть 2

14

ISO-2022-KR

Латинский / корейский алфавит часть 1

ISO-8859-1

Латинский алфавит часть 1

Покрытие Северной Америки, Западной Европы, Латинской Америки, Карибского бассейна, Канады, Африки

ISO-8859-2

Латинский алфавит часть 2

Покрытие Восточной Европы

ISO-8859-3

Латинский алфавит часть 3

Покрытие SE Europe, эсперанто, разные другие

ISO-8859-4

Латинский алфавит часть 4

Покрытие Скандинавия / Прибалтика (и другие, не входящие в ISO-8859-1)

ISO-8859-5

Латиница / кириллица часть 5

ISO-8859-6

Латиница / арабский алфавит часть 6

ISO-8859-7

Латинский / греческий алфавит часть 7

ISO-8859-8

Латиница / иврит алфавит часть 8

ISO-8859-9

Латинский 5 алфавит часть 9

То же, что ISO-8859-1 за исключением того, что турецкие символы заменяют исландские

ISO-8859-10

Латинская 6 Латинская 6 Лапландская, скандинавская и эскимосская

ISO-8859-15

То же, что ISO-8859-1, но с добавлением большего количества символов

ISO-2022-JP

Латиница / японский алфавит часть 1

ISO-2022-JP-2

Латинский / японский алфавит часть 2

ISO-2022-KR

Латинский / корейский алфавит часть 1

Консорциум Unicode был тогда создан, чтобы разработать способ показа всех символов разных языков вместо того, чтобы иметь эти разные несовместимые коды символов для разных языков.

Поэтому, если вы хотите создавать документы, которые используют символы из нескольких наборов символов, вы сможете сделать это, используя одиночные кодировки символов Unicode.

Поэтому Юникод определяет кодировки, которые могут обрабатывать строку особым образом, чтобы освободить место для огромного набора символов, который он охватывает. Они известны как UTF8, UTF-16 и UTF-32.

Sr.No Набор символов и описание
1

UTF-8 ,

Формат перевода Unicode, который поставляется в 8-битных единицах, то есть в байтах. Символ в UTF8 может иметь длину от 1 до 4 байтов, что делает UTF8 переменной ширины.

2

UTF-16

Формат перевода Unicode, который поставляется в 16-битных единицах, то есть в шортах. Это может быть 1 или 2 шорты длиной, что делает UTF16 переменной ширины.

3

UTF-32

Формат перевода Unicode, который поставляется в 32-битных единицах, то есть в длинных. Это формат с фиксированной шириной и всегда 1 “длинный” в длину.

UTF-8 ,

Формат перевода Unicode, который поставляется в 8-битных единицах, то есть в байтах. Символ в UTF8 может иметь длину от 1 до 4 байтов, что делает UTF8 переменной ширины.

UTF-16

Формат перевода Unicode, который поставляется в 16-битных единицах, то есть в шортах. Это может быть 1 или 2 шорты длиной, что делает UTF16 переменной ширины.

UTF-32

Формат перевода Unicode, который поставляется в 32-битных единицах, то есть в длинных. Это формат с фиксированной шириной и всегда 1 “длинный” в длину.

Первые 256 символов наборов символов Unicode соответствуют 256 символам ISO-8859-1.

По умолчанию процессоры HTML 4 должны поддерживать UTF-8, а процессоры XML должны поддерживать UTF-8 и UTF-16; поэтому все XHTML-совместимые процессоры также должны поддерживать UTF-16.

Кодировки символов в HTML | это.

.. Что такое Кодировки символов в HTML?
   HTML
  • HTML и HTML5
  • Динамический HTML
  • XHTML
  • XHTML Mobile Profile и CHTML
  • Canvas
  • Кодировки символов
  • Document Object Model
  • Семейство шрифтов
  • Редактор HTML
  • Элементы HTML
  • Мнемоники в HTML
  • Фреймы HTML
  • HTML5 audio и HTML5 video
  • Скрипты в HTML
  • Браузерный движок
  • Quirks mode
  • Таблицы стилей
  • Каскадные таблицы стилей
  • Unicode и HTML
  • W3C и WHATWG
  • Цвета HTML
  • Web Storage
  • WebGL
  • Сравнение
    • языков разметки документов
    • браузеров
    • браузерных движков для
      • HTML
      • HTML5
        • HTML5 Canvas
        • HTML5 Media
      • XHTML (1.1)

Язык гипертекстовой разметки HTML используется с 1991 года, но версия 4.0 (1997) была первой, где представление символов, отличных от ASCII (то есть, английского языка), достаточно стандартизировано.

Содержание

  • 1 Определение кодировки средствами HTTP
  • 2 Настройка заголовков, передаваемых сервером
  • 3 Определение кодировки средствами XML
  • 4 Мнемоники HTML и коды Unicode

Определение кодировки средствами HTTP

При отображении HTML-страницы браузерами последним нужно сообщить в какой кодировке сохранена страница. Для этого можно воспользоваться двумя методами:

При передаче документа HTML по HTTP (скажем, в WWW) набор символов документа задаётся в заголовке HTTP, например для текста в русском варианте кодировки КОИ-8:

Content-Type: text/html; charset=koi8-r

Информацию о кодировке можно вставить в сам документ HTML, используя тег meta в раздел <head> HTML-документа. Например, в случае кодировки UTF-8 тег meta будет выглядеть следующим образом:

<meta http-equiv="Content-Type" content="text/html; charset=utf-8">

В стандарте для языка HTML 5 мета тег информирующий браузер о кодировке страницы записывается отлично от правил принятых в более ранних стандартах HTML. Так пример приведенный выше в HTML 5 будет выглядеть следующим образом:

<meta charset="utf-8">

Такой способ неплохо работает для файлов, но при выдаче документа по HTTP его успешность будет зависеть от действий HTTP-сервера, пожелает ли он указать эту информацию в заголовке. Согласно HTTP/1.1, отсутствие указания charset в заголовке приравнивается к использованию набора символов ISO 8859-1.

То есть, приоритетным фактором для браузера по вопросу «в какой кодировке отображать документ» может являться переданный сервером заголовок. В этом случае браузер обязан игнорировать соответственные директивы в теге META.

Настройка заголовков, передаваемых сервером

1. Можно использовать файл .htaccess. В нём нужно указать директивы серверу касательно кодировок по умолчанию: AddDefaultCharset UTF-8 В приведенном примере кодировкой по умолчанию в заголовках сервера будет назначена UTF-8.

В случае кодировки windows-1251: AddDefaultCharset windows-1251

Данные директивы файла . htaccess наиболее часто применимы. Но в каждом отдельно взятом случае могут и не сработать. Все зависит от настроек сервера.

Есть менее популярные директивы, действие которых направлено на отключение заголовков сервера. При их отключении браузер будет выбирать кодировку в зависимости от указаний в теге МЕТА.

charsetdisable on

AddDefaultCharset Off

Зачастую, проблемы отображения кодировок связаны с тем, что устаревшее ПО для Web (например, сайт, CMS и т.д.) использует национальную кодировку в то время как сервер настроен для работы с UTF-8. В этом случае, принудительно указывается язык, кодировка необходимая ПО (например, cp1251) для web-сервера, и (как правило) интерпретатора PHP.

DefaultLanguage ru

AddDefaultCharset windows-1251

php_value default_charset "cp1251"

2. Директива php-кодом: В начале php-файла можно указать php-код, который передаст инструкции браузеру по выбору кодировки: <?php header('Content-type: text/html; charset=utf-8')?>

Определение кодировки средствами XML

В XHTML можно также указывать кодировку в преамбуле XML, например:

<?xml version="1. 0" encoding="utf-8"?>

Мнемоники HTML и коды Unicode

Символы, имеющие специальные названия (см. Мнемоники в HTML), могут быть закодированы в виде &entity;, например:

  • «&agrave;» → «à»
  • «&alpha;» → «α»
  • «&lt;» → «<»
  • «&gt;» → «>»
  • «&nbsp;» → « » (пробел)

В то же время все символы могут быть также закодированы в числовом обозначении с использованием десятичного (&#DD;) или шестнадцатеричного (&#xHHHH;) кода Unicode.

  • «&#224;» = «&#xE0;» → «à»
  • «&#945;» = «&#x3B1;» → «α»

Правильный браузер будет отображать символы, заданные вышеназванным путём, независимо от текущей кодировки документа и, в частности, даже в случае, когда такие символы ею не могут быть охвачены. Таким образом, возможен японский текст в HTML-документе, написанном в Windows-1251, и т.д.

Кодировки символов
Основы →алфавит • текст ( файл • данные ) • набор символов • конверсия
Исторические кодировки →Докомп. : семафорная (Макарова) • Морзе • Бодо • МТК-2Комп.: 6 бит • УПП • RADIX-50 • EBCDIC ( ДКОИ-8 ) • КОИ-7 • ISO 646
совре-
менное
8-битное
представ-
ление
символы →ASCII ( управляющие • печатные )не-ASCII ( псевдографика )
8бит. код.стр.Разные →   Кириллица: КОИ-8 • ГОСТ 19768-87 • MacCyrillic
ISO 8859 →1(лат.) 2 3 4 5(кир.) 6 7 8 9 10 11 12 13 14 15(€) 16
Windows →1250 1251(кир.) 1252 1253 1254 1255 1256 1257 1258 | WGL4
IBM&DOS →437 • 850 • 852 • 855 • 866 «альт.» • ( МИК ) • ( НИИ ЭВМ )
Много-
байтные
Традиционные →DBCS ( GB2312 ) • HTML
Unicode →UTF-16 • UTF-8 • список символов ( кириллица )
Связанные
темы →
интерфейс пользователя • раскладка клавиатуры • локаль • перевод строки • шрифт • кракозябры • транслит • нестандартные шрифты • текст как изображениеУтилиты: iconv • recode

Html указать кодировку страницы • Вэб-шпаргалка для интернет предпринимателей!

Содержание

  • 1 Немного о кодировках
    • 1. 1 Кодировка UTF-8
    • 1.2 Как установить кодировку в HTML и PHP
    • 1.3 Глобальные настройки кодировки
    • 1.4 Изменение кодировки базы данных
  • 2 Что такое кодировка?
  • 3 Кодировка файла
  • 4 Кодировка отображения
  • 5 Как указать кодировку HTML-страницы?
  • 6 Всё ещё есть проблема с кодировкой?
  • 7 Метатеги для поисковых механизмов
    • 7.1 description
    • 7.2 keywords
  • 8 Автозагрузка страниц
  • 9 Кодировка
    • 9.1 Рекомендуем к прочтению

Нужно правильно раскодировать сигналы, которые наш мозг получает из окружающей среды. Проще говоря, следует правильно « настроить » свой взгляд на жизнь. Ну, вроде не полупустой кошелек, а наполовину полный. То есть, требуется использовать нужную кодировку. Для интернета чаще всего правильной является кодировка utf :

Немного о кодировках

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

Но передача текста в цифровом формате происходит совсем иначе, чем у нас на экране. Для перевода текста в машинный код используется двоичная система исчисления, состоящая лишь из 0 и 1.

Следующим этапом передачи текста в виртуальном пространстве является его отображение на клиентских машинах с помощью браузера, интерпретирующего html . Вот тут и начинается самое интересное, когда браузер клиента и веб-страница содержат в себе текстовые данные в разных кодировках. Тогда пользователь на своем мониторе видит не текст, а какие-то непонятные ( нечитаемые ) символы:


Чаще всего нужно всего лишь поменять кодировку веб-страницы на кодировку utf8. Ведь она является наиболее распространенной во всем интернете.

Кодировка UTF-8

Наиболее распространенная среди стандартизированных и общепринятых текстовых кодировок. Расшифровывается как « восьмибитный формат преобразования Юникода » или « Unicode Transformation Format ».

Стандарт был разработан еще в 1992 году. В настоящее время он широко применяется не только во всемирной паутине, но и на прикладном уровне ( локальные машины и операционные системы ). Основным достоинством кодировки является ее совместимость с ASCII:


ASCII («American standard code for information interchange») еще одна (но более старая) кодировка представления текстовых данных. В ее таблице символов значения печатных и непечатных знаков заданы с помощью чисел в шестнадцатеричной системе исчисления.

При использовании UTF-8 для передачи данных в формате ASCII используются 7 первых битов. Последний ( восьмой ) служит для вывода « мусора » ( некорректно раскодированных данных ). Что при использовании кодировки для латинских символов существенно уменьшает объем текстовых данных.

Как уже говорилось, часто для корректного отображения текста достаточно лишь поменять кодировку документа. Рассмотрим, как это можно сделать в различных дисциплинах, применяемых для построения веб-пространства.

Как установить кодировку в HTML и PHP

Для установки utf 8 кодировки в html используется специальный тег . Он объединяет в себе в форме атрибутов значение метатегов.

Метатеги используются для передачи и хранения информации, предназначенной для браузеров и поисковиков. Одним из атрибутов тега является charset . Он служит для установки кодировки веб-страницы. Пример использования:


Также можно установить кодировку некоторым элементам страницы. Например, ссылке. Для этого также используется атрибут charset , значением которого выступает нужная кодировка:

Кроме этого можно присваивать значения непосредственно заголовкам http , которые передаются вместе с ответом на запрос от браузера к серверу. В таком случае кодировка сайта utf 8 , переданная через заголовок, будет доминирующей над значением, заданным внутри веб-страницы.

Многие из страниц ресурсов не являются статическими, а динамически создаются благодаря использованию серверных языков программирования. Чаще всего для построения сайтов применяют PHP . Поэтому важно знать о его средствах, позволяющих «на лету» поменять кодировку генерируемой веб-страницы.

Для установки и модификации значений заголовка используется функция header() . Ее синтаксис:

Чтобы корректно задать в php кодировку utf 8 , вызов функции header() в коде должен находиться выше всех тегов html .

Глобальные настройки кодировки

Описанные выше методы могут использоваться для отдельных веб-страниц или небольших сайтов. Но что делать, если вы имеете дело с ресурсом, состоящим из нескольких сотен страниц и десятка разделов? Давайте разберемся, как установить кодировку utf 8 для всего сайта.

Для этого нужно вносить изменения в дополнительный файл конфигурации ресурса. Он носит название .htaccess . Сначала его нужно открыть в любом текстовом редакторе, а затем добавить туда строку:


В качестве более глобального способа изменения кодировки стоит рассмотреть пример на основе любого локального сервера. Для большей наглядности мы возьмем Denwer , который довольно широко распространен в наших краях.

Чтобы изменить кодировку всех ресурсов, размещенных на нашем сервере Apache , нужно отредактировать содержимое конфигурационного файла httpd.conf . Он находится по пути:

Как и в предыдущем примере, в нем нужно заменить значение AddDefaultCharset на нужное. В нашем случае это utf-8 :

Изменение кодировки базы данных

Изменение кодировки рассмотрим на примере MySQL . Так как это одна из самых востребованных и распространенных СУБД, применяемых в сайтостроении. Все изменения можно произвести в файле my.ini . В Денвере он находится по пути:

Здесь нужно поменять значение нескольких полей на utf-8 :

  • default-character-set ;
  • character-set-server ;
  • init-connect = «set names» ;
  • default-character-set .

И затем добавить строку skip-character-set-client-handshake :


Подобные изменения можно внести не только для всех баз данных на сервере, но и для отдельно взятой в php базы mysql . Сделать это можно через пользовательский интерфейс оболочки PHPMyAdmin .

Сначала узнаем, какие кодировки установлены по умолчанию в нашей базе данных. Для этого вводим запрос SQL :

Вот какой ответ мы должны получить:


Если какие-либо значения нас не удовлетворяют, то нужно их изменить. Воспользуемся для этого запросом к ядру сервера СУБД:

В результате мы получим новые значения переменных character_set_connection , character_set_results и character_set_client.

К сожалению, не все так просто обстоит с изменением кодировки в таблицах Excel . Для этого придется воспользоваться сторонней программой для перекодирования файлов. Или обработать данные с помощью громоздких функций.

Мы рассмотрели все основные способы изменения веб-документов на кодировку utf . Надеемся, что этот материал поможет вам не только выбрать правильную кодировку текста, но и « установить » правильный взгляд на жизнь.

Первая серьёзная проблема, с которой сталкиваются большинство новичков при создании HTML-страниц, связана с набором символов (англ. character set). Выражается эта проблема с кодировкой в, так называемых, «кракозябриках», которые мы получаем вместо указанных в HTML-файле символов. В данной статье я хочу остановиться на проблеме с кодировкой подробнее, постараться расставить всё по полочкам и дать варианты решения.

  • Что такое кодировка?
  • Кодировка файла (редактирование в Notepad++)
  • Кодировка отображения (просмотр в браузере)
  • Как указать кодировку HTML-страницы? (метатег charset)
  • Всё ещё есть проблема с кодировкой? (header charset в php)

Что такое кодировка?

Условно говоря, каждый символ (знак) состоит из кода и картинки. Здесь код – это уникальный идентификатор символа в наборе символов, который определяется выбранной кодировкой, а картинка – это визуальное представление символа, которое содержится в файле шрифта в соответствующей коду символа ячейке.

Другими словами, кодировка (англ. charset) – это набор взаимосвязей кодов символов с их визуальными представлениями в шрифте.

Кодировка файла

HTML-страница представляет собой обычный текстовый файл, кодировка которого выбирается при его создании и/или сохранении на запоминающее устройство (жёсткий диск, флэшка и т.д.) .

В случае с Notepad++, кодировка нового документа задаётся в настройках текстового редактора. Выбираем в меню: Опции > Настройки… – и переходим на вкладку «Новый документ». Здесь нас интересует секция «Кодировка». По умолчанию, выбрана кодировка ANSI.


Настройка кодировки нового документа в Notepad++

Напомню, что это кодировка, в которой будет храниться HTML-файл.

Впрочем, Вы всегда можете преобразовать кодировку HTML-страницы, используя соответствующие функции текстового редактора. Например, в Notepad++ для этого кликните пункт меню «Кодировки» и выберите нужное преобразование.


Преобразование кодировки текущей HTML-страницы в Notepad++

В данном случае файл был в кодировке ANSI и я преобразовал его в UTF-8 (без BOM) . О том, что такое этот BOM Вы можете прочитать в моей статье: PHP: как удалить BOM в WordPress — проследовав по этой ссылке.

Кодировка отображения

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

Например, если Вы сохранили HTML-страницу в кодировке ANSI и откроете её в браузере, вместо русских символов Вы можем получить, так называемые, «кракозябрики».


Проблемы с кодировкой отображения HTML-страницы в браузере Firefox

В данном случае нам надо убедиться, что кодировка файла совпадает с кодировкой отображения файла в браузере. Для этого в Firefox кликните иконку меню, а потом пункт «Кодировка». Если такого у Вас нет, кликните пункт «�?зменить» и добавьте элемент «Кодировка» в меню.


Смена кодировки отображения HTML-страницы в браузере Firefox

Как вы видите, браузер отображает файл в кодировке «Юникод» (например, UTF-8) , в то время как файл был сохранён в кодировке ANSI (например, Windows-1251) . Выбрав нужную кодировку, мы получим нужный нам результат.


Проблема с кодировкой решена

В случае с Notepad++ также имеется возможность выбора кодировки отображения. Для этого кликните пункт меню «Кодировки», а потом нужный вариант используемой для отображения кодировки.


Смена кодировки отображения HTML-страницы в Notepad++

В данном случае я изменил кодировку отображения ANSI на UTF-8 (без BOM) .

Как указать кодировку HTML-страницы?

�? так, мы уже разобрались с тем, что такое кодировка и в чём состоит отличие кодировки файла и кодировки отображения. Теперь нам нужно решить проблему с кодировкой, которая заключается в неправильной интерпретации браузером (или любым другим клиентом) кодировки HTML-страницы.

Почему возникают проблемы с кодировкой? Определить кодировку HTML-страницы не просто, а зачастую и не возможно, т.к. у того же браузера нет информации о ней или она указана неправильно.

Для того чтобы указать кодировку HTML-страницы используется специальный метатег. В HTML5 он имеет следующий урезанный вид:

В данном случае указана кодировка UTF-8 (Юникод) .

В более старых версиях HTML этот метатег имеет следующий вид:

Этот метатег создаёт HTTP-заголовок Content-Type , в котором указывается тип документа text/html и его кодировка Windows-1251 (ANSI) .

Лично я рекомендую использовать именно этот вариант, т.к. с ним будет меньше всего проблем. Главное чтобы такой метатег присутствовал в секции HEAD , и указанная в нём кодировка соответствовала кодировке файла. В большинстве случаев этого будет достаточно.

Всё ещё есть проблема с кодировкой?

В некоторых случаях указать метатег с кодировкой HTML-страницы будет недостаточно. Такая проблема может быть вызвана настройками самого сервера, на котором находится файл HTML-страницы. Дело в том, что сервер способен выдавать свой HTTP-заголовок Content-Type , который будет, условно говоря, иметь приоритет перед метатегом.

В данном случае эту проблему можно решить путём внесения изменений в настройки сервера. Я не буду вдаваться в детали данного вопроса и порекомендую лишь отключать всю эту перекодировку через файл .htaccess, например:

Также можно производить изменения HTTP-заголовка Content-Type и программными средствами. В том же PHP для этого используется функция header() , например:

8 декабря 2016 г., 19:56 Удалить комментарий

Я так понимаю, вот я в программе создаю html страницу. Если я в тексте напишу хотя бы один английский символ, то кодировка автоматически станет Юникод?

А в браузере по умолчанию отображаются все страницы в ANSI, поэтому мой файл в Юникоде как раз и будет с кракозябрами?

15 февраля 2017 г., 11:57 Удалить комментарий

Буквы на английском имеют одинаковые коды во всех кодировках, так что с ними проблем не возникает, а вот с той же кириллицей могут быть проблемы.

По сути, действительно, если использовать только буквы на английском, то кодировка часто определяется браузерами как «Кириллица (Windows)» или тип того, просто он не может распознать кодировку не имея «нестандартных» символов.

Впрочем, даже если есть символы и прописан meta тег, не факт, что браузер поймёт в как отображать страницу, т.к. в основном ориентируется на http заголовки сервера.

15 февраля 2017 г., 18:25 Удалить комментарий

спасибо огромное за полезную статью.
но у меня остался таки вопрос. как изменить кодировку по умолчанию в браузере firefox я поняла,зашла в настройки, а там нет нужного мне юникода. файлы создаю в нотепаде++ с юникодом. посоветуйте пожалуйста, как поступить в моем случае. писать в кириллице,чтобы совпадало с фаерфоксом? либо как. а вообще хотела использовать юникод везде))

Метатеги используются для хранения информации предназначенной для браузеров и поисковых систем. Например, механизмы поисковых систем обращаются к метатегам для получения описания сайта, ключевых слов и других данных.

Метатеги для поисковых механизмов

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

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

Некоторые принципы, относящиеся к метатегам:

  • не включайте ключевые слова, которые не содержатся на ваших страницах;
  • не повторяйте ключевые слова;
  • используйте метатеги по их прямому назначению;
  • делайте описание и список ключевых слов различными для каждой страницы сайта с учетом содержимого.

description

Большинство поисковых серверов отображают содержимое поля description (пример 1) при выводе результатов поиска. Если этого тега нет на странице, то поисковый движок просто перечислит первые встречающиеся слова на странице, которые, как правило, оказываются не очень-то и в тему.

Пример 1. Использование Description

keywords

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

Пример 2. Использование Keywords

Ключевые слова можно перечислять через пробел или запятую. Поисковые системы сами приведут запись к виду, который они используют.

Автозагрузка страниц

Чтобы автоматически загружать новый документ через определенный промежуток времени используется инструкция http-equiv=»refresh» (пример 3).

Пример 3. Автозагрузка страницы

Браузер поймет эту запись, как ожидать 5 секунд, а затем загрузить новую страницу, указанную в параметре URL , в данном случае это переход на сайт htmlbook. ru.

Этот метатег позволяет создавать перенаправление (редирект) на другой сайт. Если URL не указан, произойдет автоматическое обновление текущей страницы через количество секунд, заданных в атрибуте content .

Кодировка

Чтобы сообщить браузеру, в какой кодировке находятся символы веб-страницы, необходимо установить параметр . Для операционной системы Windows и кириллицы charset обычно принимает значение utf-8 или windows-1251 (пример 4).

Пример 4. Выбор текущей кодировки

Если указание кодировки отсутствует, браузер пытается сам определить, какой тип символов используется в документе и выбирает необходимую кодировку автоматически. Браузер не всегда может точно распознать язык веб-страницы и в некоторых случаях предлагает вьетнамскую кодировку вместо кириллицы. По этой причине лучше всегда указывать приведенную строчку. Тем не менее, возникают обстоятельства, когда указание кодировки может принести определенный вред. Например, веб-сервер автоматически использует перекодирование данных в KOI-8, а браузер, встретив параметр charset=windows-1251 , переводит текст в кодировку Windows. Получается двойное изменение символов, прочитать такой текст не просто. К счастью, подобная проблема уже отходит в прошлое, во всяком случае, ее легко можно выявить и нейтрализовать на уровне сервера.

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

Список ссылок на символьные сущности см. Список ссылок на символьные сущности XML и HTML.

Для исправления ссылок в Википедии см. Справка: процентное кодирование § Исправление ссылок с неподдерживаемыми символами.

HTML (Язык гипертекстовой разметки) используется с 1991 года, но HTML 4.0 (декабрь 1997 года) был первой стандартизированной версией, в которой символы получили достаточно полное лечение. Когда HTML-документ включает специальные символы вне семибитного диапазона ASCII, стоит рассмотреть две цели: информационная честность, и универсальный браузер отображать.

Содержание

  • 1 Указание кодировки символов документа
  • 2 Разрешенные кодировки
  • 3 Ссылки на символы
    • 3.1 Ссылки на символы HTML
    • 3. 2 Ссылки на символы XML
  • 4 Смотрите также
  • 5 Рекомендации
  • 6 внешняя ссылка

Указание кодировки символов документа

Есть несколько способов указать, какая кодировка символов используется в документе. Во-первых, веб сервер может включать кодировку символов или «кодировка» в Протокол передачи гипертекста (HTTP) Тип содержимого заголовок, который обычно выглядит так:[1]

Content-Type: текст / html; charset = ISO-8859-4

Этот метод дает HTTP-серверу удобный способ изменить кодировку документа в соответствии с согласование содержания; определенное программное обеспечение HTTP-сервера может это сделать, например Apache с модуль mod_charset_lite.[2]

Для HTML эту информацию можно включить в голова элемент в верхней части документа:[3]

<мета http-Equiv="Тип содержимого" содержание="текст / html; charset = utf-8">

HTML5 также позволяет следующий синтаксис означать то же самое:[3]

<мета кодировка=«УТФ-8»>

XHTML у документов есть третий вариант: выразить кодировку символов через XML декларация следующего содержания:[4]

<?xml version="1. 0" encoding="ISO-8859-1"?>

Поскольку кодировка символов не может быть известна до этого[требуется разъяснение ] объявление анализируется, может возникнуть проблема, зная, какая кодировка используется для самого объявления. Главный принцип заключается в том, что объявление должно быть закодировано в чистом ASCII, и поэтому (если объявление находится внутри файла) кодировка должна быть Расширение ASCII. Для того чтобы кодировки не были обратно совместимы с ASCII, браузеры должны иметь возможность анализировать объявления в таких кодировках. Примеры таких кодировок: UTF-16BE и UTF-16LE.

Начиная с HTML5 рекомендуемая кодировка UTF-8.[3] В спецификации определен «алгоритм сниффинга кодирования» для определения кодировки символов документа на основе нескольких источников ввода, включая:

  1. Явная инструкция пользователя
  2. Явный метатег в первых 1024 байтах документа.
  3. А Отметка порядка байтов в пределах первых трех байтов документа
  4. Тип содержимого HTTP или другая информация транспортного уровня
  5. Анализ байтов документа на предмет определенных последовательностей или диапазонов значений байтов,[5] и другие механизмы предварительного обнаружения.

Для ASCII-совместимых кодировок символов следствием неправильного выбора является то, что символы за пределами печатаемого диапазона ASCII (от 32 до 126) обычно отображаются неправильно. Это создает несколько проблем для английский — говорящие пользователи, но для других языков обычно — в некоторых случаях всегда — требуются символы вне этого диапазона. В CJK В средах, где используется несколько различных многобайтовых кодировок, также часто применяется автоматическое обнаружение. Наконец, браузеры обычно позволяют пользователю переопределить неверный метку кодировки вручную.

Многоязычные веб-сайты и веб-сайты на незападных языках все чаще используют UTF-8, что позволяет использовать одну и ту же кодировку для всех языков. UTF-16 или же UTF-32, которые также могут использоваться для всех языков, менее широко используются, поскольку их сложнее обрабатывать в языках программирования, которые предполагают байтовый Кодирование расширенного набора ASCII, и они менее эффективны для текста с высокой частотой символов ASCII, что обычно имеет место для документов HTML.

Успешный просмотр страницы не обязательно означает, что ее кодировка указана правильно. Если создатель страницы и читатель оба предполагают кодировку символов, зависящую от платформы, и сервер не отправляет никакой идентифицирующей информации, то читатель, тем не менее, будет видеть страницу так, как задумал создатель, но другие читатели на других платформах или с разными родными языками не увидит страницу должным образом.

Разрешенные кодировки

В WHATWG Стандарт кодирования, на который ссылаются последние стандарты HTML (текущий WHATWG HTML Living Standard, а также ранее конкурирующий W3C HTML 5.0 и 5.1) определяет список кодировок, которые браузеры должны поддерживать. Стандарты HTML запрещают поддержку других кодировок.[6][7][8] Стандарт кодирования также предусматривает, что новые форматы, новые протоколы (даже когда используются существующие форматы) и авторы новых документов должны использовать UTF-8 исключительно.[9]

Помимо UTF-8, следующие кодировки явно перечислены в самом стандарте HTML со ссылкой на стандарт кодирования:[8]

  • ISO-8859-2
  • ISO-8859-7
  • ISO-8859-8
  • Окна-874[а]
  • Окна-1250
  • Окна-1251
  • Окна-1252[b]
  • Окна-1254[c]
  • Окна-1255
  • Окна-1256
  • Окна-1257
  • Окна-1258
  • GB18030[d]
  • Big5[e]
  • Shift JIS[f]
  • ISO-2022-JP[грамм]
  • EUC-KR[час]
  • UTF-16BE[я]
  • UTF-16LE[j]
  • x-определяемый пользователем[k]
  1. ^ Также указано для ТИС-620, ISO-8859-11 и связанные ярлыки. В спецификации используется тот же индекс, что и для Shift JIS (поскольку он находится в пределах досягаемости набора кодов EUC 1), то есть включает расширения NEC. JIS X 0212 включен только для декодирования.[25]

Следующие кодировки указаны как явные примеры запрещенных кодировок:[8]

  • ЦЭСУ-8
  • UTF-7
  • BOCU-1
  • ГКГУ
  • EBCDIC
  • UTF-32

Стандарт также определяет «замещающий» декодер, который отображает весь контент, помеченный как определенные кодировки, в замещающий символ ( ), вообще отказываясь его обрабатывать. Это предназначено для предотвращения атак (например, межсайтовый скриптинг ), которые могут использовать разницу между клиентом и сервером в поддерживаемых кодировках для маскировки вредоносного содержимого.[26] Хотя та же проблема безопасности относится к ISO-2022-JP и UTF-16, которые также позволяют по-разному интерпретировать последовательности байтов ASCII, этот подход не рассматривался как выполнимый для них, поскольку они сравнительно чаще используются в развернутом контенте. [27] Следующие кодировки обрабатываются так:[28]

  • ISO-2022-KR
  • ISO-2022-CN
  • ISO-2022-CN-EXT
  • HZ-GB-2312

Ссылки на символы

Основные статьи: Ссылка на сущность символа и Ссылка на числовые символы

Помимо собственной кодировки символов, символы также могут быть закодированы как ссылки на символы, который может быть ссылки на числовые символы (десятичный или же шестнадцатеричный ) или же ссылки на символьные сущности. Ссылки на символьные сущности также иногда называют названные объекты, или же HTML-объекты для HTML. Использование символьных ссылок в HTML происходит от SGML.

Ссылки на символы HTML

А ссылка на числовой символ в HTML относится к символу по его Универсальный набор символов /Unicode кодовая точка, и использует формат

&#nnnn;

или же

Иксхххх;

куда nnnn это кодовая точка в десятичный форма, и хххх это кодовая точка в шестнадцатеричный форма. В Икс в XML-документах должен быть строчным. В nnnn или же хххх может быть любым количеством цифр и может включать в себя ведущие нули. В хххх может смешивать прописные и строчные буквы, хотя прописные буквы являются обычным стилем.

Не все веб-браузеры или же почтовые клиенты используется получателями HTML-документов, или текстовые редакторы используется авторами документов HTML, сможет отображать все символы HTML. Большинство современных программ способно отображать большинство или все символы языка пользователя, а также рисовать прямоугольник или другой четкий индикатор для символов, которые они не могут отобразить.

Для кодов от 0 до 127 исходный 7-битный ASCII стандартный набор, большинство этих символов можно использовать без ссылки на символ. Все коды от 160 до 255 могут быть созданы с помощью имена персонажей. Только несколько кодов с более высокими номерами могут быть созданы с использованием имен сущностей, но все они могут быть созданы с помощью ссылки на символ десятичного числа.

Ссылки на символьные сущности также могут иметь формат &имя; куда имя представляет собой буквенно-цифровую строку с учетом регистра. Например, «λ» также может быть закодировано как & лямбда; в HTML-документе. Ссылки на сущность персонажа & lt;, & gt;, & quot; и & amp; предопределены в HTML и SGML, потому что <, >, " и & уже используются для разграничения разметки. В частности, это не включало XML & апос; (‘) сущность до HTML5. Для получения списка всех названных ссылок на сущности символов HTML вместе с версиями, в которых они были представлены, см. Список ссылок на символьные сущности XML и HTML.

Излишнее использование ссылок на символы HTML может значительно снизить удобочитаемость HTML. Если кодировка символов для веб-страницы выбрана надлежащим образом, то ссылки на символы HTML обычно требуются только для символов-разделителей разметки, как указано выше, и для нескольких специальных символов (или вообще без них, если Unicode кодирование как UTF-8 используется). Неправильное экранирование HTML-объекта также может открыть уязвимости безопасности для атак с использованием инъекций, таких как межсайтовый скриптинг. Если атрибуты HTML не заключены в кавычки, некоторые символы, что наиболее важно пробел, такие как пробел и табуляция, должны быть экранированы с помощью сущностей. В других языках, связанных с HTML, есть свои методы экранирования символов.

Ссылки на символы XML

В отличие от традиционного HTML с его большим диапазоном ссылок на символьные сущности, в XML имеется только пять предопределенных ссылок на символьные сущности. Они используются для экранирования символов, чувствительных к разметке в определенных контекстах:[29]

  • & amp; → & (амперсанд, U + 0026)
  • & lt;
  • & gt; →> (знак больше, U + 003E)
  • & quot; → «(кавычка, U + 0022)
  • & апос; → ‘(апостроф, U + 0027)

Все остальные ссылки на символьные сущности должны быть определены до того, как их можно будет использовать. Брей, Т.; Paoli, J .; Сперберг-Маккуин, К.; Maler, E .; Йерго, Ф. (26 ноября 2008 г.), «Ссылки на персонажей и сущностей», XML, W3C, получено 8 марта 2010

внешняя ссылка

  • Инструмент кодирования и декодирования HTML-сущностей онлайн
  • Ссылки на символьные сущности в HTML4
  • Полное руководство по кодированию веб-символов
  • Глава HTML Entity Encoding в Руководстве по безопасности браузера — дополнительная информация о текущих браузерах и работе с ними
  • Вики-статья проекта Open Web Application Security Project о межсайтовых сценариях (XSS)

Как прописать кодировку в html?

Содержание

  • Немного о кодировках
  • Кодировка UTF-8
  • Как установить кодировку в HTML и PHP
  • Глобальные настройки кодировки
  • Изменение кодировки базы данных
  • Что такое кодировка?
  • Кодировка файла
  • Кодировка отображения
  • Как указать кодировку HTML-страницы?
  • Всё ещё есть проблема с кодировкой?
  • Что такое кодировка сайта и как она работает
  • Самые распространенные кодировки
  • Проблемы с кодировкой не только в HTML-странице
  • META Charset HTML-документа

Нужно правильно раскодировать сигналы, которые наш мозг получает из окружающей среды. Проще говоря, следует правильно « настроить » свой взгляд на жизнь. Ну, вроде не полупустой кошелек, а наполовину полный. То есть, требуется использовать нужную кодировку. Для интернета чаще всего правильной является кодировка utf :

Немного о кодировках

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

Но передача текста в цифровом формате происходит совсем иначе, чем у нас на экране. Для перевода текста в машинный код используется двоичная система исчисления, состоящая лишь из 0 и 1.

Следующим этапом передачи текста в виртуальном пространстве является его отображение на клиентских машинах с помощью браузера, интерпретирующего html . Вот тут и начинается самое интересное, когда браузер клиента и веб-страница содержат в себе текстовые данные в разных кодировках. Тогда пользователь на своем мониторе видит не текст, а какие-то непонятные ( нечитаемые ) символы:


Чаще всего нужно всего лишь поменять кодировку веб-страницы на кодировку utf8. Ведь она является наиболее распространенной во всем интернете.

Кодировка UTF-8

Наиболее распространенная среди стандартизированных и общепринятых текстовых кодировок. Расшифровывается как « восьмибитный формат преобразования Юникода » или « Unicode Transformation Format ».

Стандарт был разработан еще в 1992 году. В настоящее время он широко применяется не только во всемирной паутине, но и на прикладном уровне ( локальные машины и операционные системы ). Основным достоинством кодировки является ее совместимость с ASCII:


ASCII («American standard code for information interchange») еще одна (но более старая) кодировка представления текстовых данных. В ее таблице символов значения печатных и непечатных знаков заданы с помощью чисел в шестнадцатеричной системе исчисления.

При использовании UTF-8 для передачи данных в формате ASCII используются 7 первых битов. Последний ( восьмой ) служит для вывода « мусора » ( некорректно раскодированных данных ). Что при использовании кодировки для латинских символов существенно уменьшает объем текстовых данных.

Как уже говорилось, часто для корректного отображения текста достаточно лишь поменять кодировку документа. Рассмотрим, как это можно сделать в различных дисциплинах, применяемых для построения веб-пространства.

Как установить кодировку в HTML и PHP

Для установки utf 8 кодировки в html используется специальный тег . Он объединяет в себе в форме атрибутов значение метатегов.

Метатеги используются для передачи и хранения информации, предназначенной для браузеров и поисковиков. Одним из атрибутов тега является charset . Он служит для установки кодировки веб-страницы. Пример использования:


Также можно установить кодировку некоторым элементам страницы. Например, ссылке. Для этого также используется атрибут charset , значением которого выступает нужная кодировка:

Кроме этого можно присваивать значения непосредственно заголовкам http , которые передаются вместе с ответом на запрос от браузера к серверу. В таком случае кодировка сайта utf 8 , переданная через заголовок, будет доминирующей над значением, заданным внутри веб-страницы.

Многие из страниц ресурсов не являются статическими, а динамически создаются благодаря использованию серверных языков программирования. Чаще всего для построения сайтов применяют PHP . Поэтому важно знать о его средствах, позволяющих «на лету» поменять кодировку генерируемой веб-страницы.

Для установки и модификации значений заголовка используется функция header() . Ее синтаксис:

Чтобы корректно задать в php кодировку utf 8 , вызов функции header() в коде должен находиться выше всех тегов html .

Глобальные настройки кодировки

Описанные выше методы могут использоваться для отдельных веб-страниц или небольших сайтов. Но что делать, если вы имеете дело с ресурсом, состоящим из нескольких сотен страниц и десятка разделов? Давайте разберемся, как установить кодировку utf 8 для всего сайта.

Для этого нужно вносить изменения в дополнительный файл конфигурации ресурса. Он носит название .htaccess . Сначала его нужно открыть в любом текстовом редакторе, а затем добавить туда строку:


В качестве более глобального способа изменения кодировки стоит рассмотреть пример на основе любого локального сервера. Для большей наглядности мы возьмем Denwer , который довольно широко распространен в наших краях.

Чтобы изменить кодировку всех ресурсов, размещенных на нашем сервере Apache , нужно отредактировать содержимое конфигурационного файла httpd.conf . Он находится по пути:

Как и в предыдущем примере, в нем нужно заменить значение AddDefaultCharset на нужное. В нашем случае это utf-8 :

Изменение кодировки базы данных

Изменение кодировки рассмотрим на примере MySQL . Так как это одна из самых востребованных и распространенных СУБД, применяемых в сайтостроении. Все изменения можно произвести в файле my.ini . В Денвере он находится по пути:

Здесь нужно поменять значение нескольких полей на utf-8 :

  • default-character-set ;
  • character-set-server ;
  • init-connect = «set names» ;
  • default-character-set .

И затем добавить строку skip-character-set-client-handshake :


Подобные изменения можно внести не только для всех баз данных на сервере, но и для отдельно взятой в php базы mysql . Сделать это можно через пользовательский интерфейс оболочки PHPMyAdmin .

Сначала узнаем, какие кодировки установлены по умолчанию в нашей базе данных. Для этого вводим запрос SQL :

Вот какой ответ мы должны получить:


Если какие-либо значения нас не удовлетворяют, то нужно их изменить. Воспользуемся для этого запросом к ядру сервера СУБД:

В результате мы получим новые значения переменных character_set_connection , character_set_results и character_set_client.

К сожалению, не все так просто обстоит с изменением кодировки в таблицах Excel . Для этого придется воспользоваться сторонней программой для перекодирования файлов. Или обработать данные с помощью громоздких функций.

Мы рассмотрели все основные способы изменения веб-документов на кодировку utf . Надеемся, что этот материал поможет вам не только выбрать правильную кодировку текста, но и « установить » правильный взгляд на жизнь.

Первая серьёзная проблема, с которой сталкиваются большинство новичков при создании HTML-страниц, связана с набором символов (англ. character set). Выражается эта проблема с кодировкой в, так называемых, «кракозябриках», которые мы получаем вместо указанных в HTML-файле символов. В данной статье я хочу остановиться на проблеме с кодировкой подробнее, постараться расставить всё по полочкам и дать варианты решения.

  • Что такое кодировка?
  • Кодировка файла (редактирование в Notepad++)
  • Кодировка отображения (просмотр в браузере)
  • Как указать кодировку HTML-страницы? (метатег charset)
  • Всё ещё есть проблема с кодировкой? (header charset в php)

Что такое кодировка?

Условно говоря, каждый символ (знак) состоит из кода и картинки. Здесь код – это уникальный идентификатор символа в наборе символов, который определяется выбранной кодировкой, а картинка – это визуальное представление символа, которое содержится в файле шрифта в соответствующей коду символа ячейке.

Другими словами, кодировка (англ. charset) – это набор взаимосвязей кодов символов с их визуальными представлениями в шрифте.

Кодировка файла

HTML-страница представляет собой обычный текстовый файл, кодировка которого выбирается при его создании и/или сохранении на запоминающее устройство (жёсткий диск, флэшка и т.д.) .

В случае с Notepad++, кодировка нового документа задаётся в настройках текстового редактора. Выбираем в меню: Опции > Настройки… – и переходим на вкладку «Новый документ». Здесь нас интересует секция «Кодировка». По умолчанию, выбрана кодировка ANSI.


Настройка кодировки нового документа в Notepad++

Напомню, что это кодировка, в которой будет храниться HTML-файл.

Впрочем, Вы всегда можете преобразовать кодировку HTML-страницы, используя соответствующие функции текстового редактора. Например, в Notepad++ для этого кликните пункт меню «Кодировки» и выберите нужное преобразование.


Преобразование кодировки текущей HTML-страницы в Notepad++

В данном случае файл был в кодировке ANSI и я преобразовал его в UTF-8 (без BOM) . О том, что такое этот BOM Вы можете прочитать в моей статье: PHP: как удалить BOM в WordPress — проследовав по этой ссылке.

Кодировка отображения

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

Например, если Вы сохранили HTML-страницу в кодировке ANSI и откроете её в браузере, вместо русских символов Вы можем получить, так называемые, «кракозябрики».


Проблемы с кодировкой отображения HTML-страницы в браузере Firefox

В данном случае нам надо убедиться, что кодировка файла совпадает с кодировкой отображения файла в браузере. Для этого в Firefox кликните иконку меню, а потом пункт «Кодировка». Если такого у Вас нет, кликните пункт «�?зменить» и добавьте элемент «Кодировка» в меню.


Смена кодировки отображения HTML-страницы в браузере Firefox

Как вы видите, браузер отображает файл в кодировке «Юникод» (например, UTF-8) , в то время как файл был сохранён в кодировке ANSI (например, Windows-1251) . Выбрав нужную кодировку, мы получим нужный нам результат.


Проблема с кодировкой решена

В случае с Notepad++ также имеется возможность выбора кодировки отображения. Для этого кликните пункт меню «Кодировки», а потом нужный вариант используемой для отображения кодировки.


Смена кодировки отображения HTML-страницы в Notepad++

В данном случае я изменил кодировку отображения ANSI на UTF-8 (без BOM) .

Как указать кодировку HTML-страницы?

�? так, мы уже разобрались с тем, что такое кодировка и в чём состоит отличие кодировки файла и кодировки отображения. Теперь нам нужно решить проблему с кодировкой, которая заключается в неправильной интерпретации браузером (или любым другим клиентом) кодировки HTML-страницы.

Почему возникают проблемы с кодировкой? Определить кодировку HTML-страницы не просто, а зачастую и не возможно, т.к. у того же браузера нет информации о ней или она указана неправильно.

Для того чтобы указать кодировку HTML-страницы используется специальный метатег. В HTML5 он имеет следующий урезанный вид:

В данном случае указана кодировка UTF-8 (Юникод) .

В более старых версиях HTML этот метатег имеет следующий вид:

Этот метатег создаёт HTTP-заголовок Content-Type , в котором указывается тип документа text/html и его кодировка Windows-1251 (ANSI) .

Лично я рекомендую использовать именно этот вариант, т.к. с ним будет меньше всего проблем. Главное чтобы такой метатег присутствовал в секции HEAD , и указанная в нём кодировка соответствовала кодировке файла. В большинстве случаев этого будет достаточно.

Всё ещё есть проблема с кодировкой?

В некоторых случаях указать метатег с кодировкой HTML-страницы будет недостаточно. Такая проблема может быть вызвана настройками самого сервера, на котором находится файл HTML-страницы. Дело в том, что сервер способен выдавать свой HTTP-заголовок Content-Type , который будет, условно говоря, иметь приоритет перед метатегом.

В данном случае эту проблему можно решить путём внесения изменений в настройки сервера. Я не буду вдаваться в детали данного вопроса и порекомендую лишь отключать всю эту перекодировку через файл .htaccess, например:

Также можно производить изменения HTTP-заголовка Content-Type и программными средствами. В том же PHP для этого используется функция header() , например:

8 декабря 2016 г., 19:56 Удалить комментарий

Я так понимаю, вот я в программе создаю html страницу. Если я в тексте напишу хотя бы один английский символ, то кодировка автоматически станет Юникод?

А в браузере по умолчанию отображаются все страницы в ANSI, поэтому мой файл в Юникоде как раз и будет с кракозябрами?

15 февраля 2017 г., 11:57 Удалить комментарий

Буквы на английском имеют одинаковые коды во всех кодировках, так что с ними проблем не возникает, а вот с той же кириллицей могут быть проблемы.

По сути, действительно, если использовать только буквы на английском, то кодировка часто определяется браузерами как «Кириллица (Windows)» или тип того, просто он не может распознать кодировку не имея «нестандартных» символов.

Впрочем, даже если есть символы и прописан meta тег, не факт, что браузер поймёт в как отображать страницу, т.к. в основном ориентируется на http заголовки сервера.

15 февраля 2017 г., 18:25 Удалить комментарий

спасибо огромное за полезную статью.
но у меня остался таки вопрос. как изменить кодировку по умолчанию в браузере firefox я поняла,зашла в настройки, а там нет нужного мне юникода. файлы создаю в нотепаде++ с юникодом. посоветуйте пожалуйста, как поступить в моем случае. писать в кириллице,чтобы совпадало с фаерфоксом? либо как. а вообще хотела использовать юникод везде))

Автор статьи: Сергей Каминский

При создании сайта у начинающих веб-мастеров часто появляются вопросы: в какой кодировке делать сайт, чем отличается UTF-8 от windows-1251 и как ее прописывать в META Charset HTML-страницы сайта. Ответы на все эти вопросы в данной статье.

Что такое кодировка сайта и как она работает

Кодировку можно представить в виде таблицы, состоящей из разных букв, цифр и других символов понятных человеку, которые закодированы определенным образом. Когда вы открываете текстовый файл, к которым относятся в том числе HTML-страницы, то компьютер считывает из заголовка файла в какой кодировке он был сохранен и выводит текст в соответствующей кодировке преобразовывая компьютерные данные в вид понятный человеку сопоставляя эти данные с таблицей кодировки. Если информация о кодировке из заголовка файла совпадает с кодировкой в которой сохранены данные в HTML-странице, то пользователь видит привычные ему буквы, цифры и другие символы. Если же есть несовпадение, то в результате пользователю выводится непонятный набор символов, особенно часто это происходит в старых почтовых программах. Если пользователь получил письмо с непонятными крякозябрами, то просто перебирая разные кодировки, обычно получается угадать и выбрать ту, в которой написано письмо, и в результате непонятный набор символов превращается в понятный человеку текст.

То же самое происходит и с HTML-страницами сайта. Если документ был сохранен, например, в кодировке UTF-8, а в самом документе прописан META-тег указывающий что это кодировка windows-1251, то браузер опять же будет сопоставлять сохраненные в файле данные с таблицей указанной ему кодировки и так как символы закодированы по-разному, то браузер выведет вместо привычного текста непонятный набор символов или же часть букв может быть в нормальном виде, а другие буквы или символы могут выводиться, например, в виде знаков вопроса. Все выше сказанное относится в том числе и к отображению имен файлов.

Создавая новый документ в текстовом редакторе лучше сразу убедиться что выбрана нужная кодировка. Современные редакторы позволяют преобразовать текст открытого документа из одной кодировки в другую, а стандартный Блокнот позволяет выбрать кодировку только при сохранении файла.

Самые распространенные кодировки

Из предыдущего пункта вы уже знаете что такое кодировка и почему настолько важно правильно прописать ее в коде страниц сайта. Давайте теперь выясним какую из множества кодировок лучше выбрать для будущего сайта. Поскольку самой распространенной и наиболее понятной в освоении всегда была операционная система Windows, то большинство веб-разработчиков создавали HTML-страницы в кодировке windows-1251 (ANSI), которая использовалась по-умолчанию. Но windows-1251 поддерживает не очень большое количество букв и символов, а разработчики хотят использовать в своих текстах различные стрелочки, сердечки, квадратики и другие символы, в том числе есть необходимость совмещать слова из разных языков в одном документе, поэтому на смену ей уже давно пришла более расширенная UTF-8 и большинство разработчиков используют именно эту кодировку.

Проблемы с кодировкой не только в HTML-странице

Сайт, независимо от того является ли он просто набором статических HTML-документов или сложных динамических скриптов генерирующих страницы на лету, размещается на веб-сервере, который также работает с определенной кодировкой. И если сервер выдает информацию в одной кодировке, а ваши страницы или скрипты сохранены в другой кодировке, то опять же могут быть проблемы с отображением страниц в браузере пользователя. Многие хостинги позволяют менять настройки и выбрать кодировку в соответствии с той, которая используется в файлах сайта, через панель управления или же прописать ее в файле .htaccess, если на хостинге используется популярный веб-сервер Apache.

Практически ни один современный сайт не обходится без использования базы данных MySQL и она также может стать источником проблем с кодировкой. Если файлы сайта сохранены в одной кодировке, а информация в базе данных в другой, то на странице та часть информации, которая выводится из базы данных может отображаться в виде все тех же знаков вопросов или других непонятных символов. Чтобы избежать проблем с кодировкой она должна быть одинаковой для веб-сервера, базы данных MySQL, в скриптах, в HTML-страницах сайта и в META-теге, который прописывается в HTML-коде. Если есть проблемы с отображением текста, то проверяйте на наличие проблемы все выше перечисленное.

META Charset HTML-документа

Чтобы сообщить браузеру и поисковым системам в какой кодировке сохранены страницы сайта в их коде прописывается META Charset.

Для кодировки windows-1251:

Для кодировки UTF-8:

Теперь вы знаете что такое кодировка сайта и где искать проблемы если в какой-либо части сайта неправильно отображается текст.

Другие записи по теме в разделе статьи по HTML и CSS

Представление HTML-документа

Представление HTML-документа

 предыдущий следующий содержимое   элементы   атрибуты индекс


Содержание

  1. Набор символов документа
  2. Кодировки символов
    1. Выбор кодировки
      • Примечания по конкретным кодировкам
    2. Указание символа кодировка
  3. Ссылки на символы
    1. Ссылки на числовые символы
    2. Ссылки на сущности персонажей
  4. Неотображаемые символы

В этой главе мы обсудим, как HTML-документы представляются на компьютере. и через Интернет.

Раздел о наборе символов документа решает вопрос о том, какие абстрактные символов могут быть частью HTML документ. Символы включают латинскую букву «А», кириллическую букву «I», Китайский иероглиф, означающий «вода» и т. д.

Раздел о кодировках символов касается вопрос о том, как эти символы могут быть представляет в файле или когда переданы через Интернет. Поскольку некоторые кодировки символов не могут быть напрямую представляют все символы, которые автор может захотеть включить в документ, HTML предлагает другие механизмы, называемые ссылками на символы, для обозначения любого персонажа.

Так как в человеческих языках существует большое количество символов, и великое множество способов изобразить эти символы, необходимо проявлять должную осторожность сделано так, чтобы документы могли быть поняты пользовательскими агентами по всему миру.

Для обеспечения совместимости SGML требует, чтобы каждое приложение (включая HTML) укажите его набор символов документа. Набор символов документа состоит из:

  • Репертуар : Набор абстрактных символов, такие как латинская буква «А», кириллическая буква «I», китайский иероглиф означает «вода» и т. д.
  • Кодовые позиции : Набор целочисленных ссылок на символы в репертуар.

Каждый документ SGML (включая каждый документ HTML) представляет собой последовательность персонажей из репертуара. Компьютерные системы идентифицируют каждый символ по его кодовая позиция; например, в наборе символов ASCII кодовые позиции 65, 66, и 67 относятся к символам «A», «B» и «C» соответственно.

Набор символов ASCII недостаточен для глобальной информационной системы таких как Интернет, поэтому HTML использует гораздо более полный набор символов, называемый Универсальный набор символов (UCS) , определено в [ISO10646]. Этот стандарт определяет репертуар из тысяч символов, используемых сообществами по всему миру.

Набор символов, определенный в [ISO10646], не соответствует посимвольный эквивалент Unicode ([UNICODE]). Оба эти стандарта время от времени обновляются. с новыми символами, и с поправками следует ознакомиться в соответствующем Веб-сайты. В текущей спецификации «[ISO10646]» используется для обозначения набор символов документа, в то время как «[UNICODE]» зарезервирован для ссылок на Двунаправленный текст Unicode алгоритм.

Однако набор символов документа недостаточен для того, чтобы пользовательские агенты для правильной интерпретации HTML-документов, как они обычно обмениваются — кодируется как последовательность байтов в файле или во время передачи по сети. Пользователь агенты также должны знать конкретную кодировку символов который использовался для преобразования потока символов документа в байт ручей.

То, что в этой спецификации называется символом кодировка известна под разными именами в других спецификациях (что может вызвать некоторую путаницу). Тем не менее, концепция во многом одинакова через Интернет. Кроме того, заголовки протоколов, атрибуты и параметры ссылаясь на кодировки символов, имеют одно и то же имя — «charset» — и используют те же значения из Реестр [IANA] (см. [CHARSETS] для полный список).

Параметр «charset» определяет кодировку символов, которая является методом преобразования последовательности байтов в последовательность символов. Этот преобразование естественно вписывается в схему веб-активности: серверы отправляют HTML документы для пользовательских агентов в виде потока байтов; пользовательские агенты интерпретируют их как последовательность символов. Метод преобразования может варьироваться от простого один к одному соответствие сложным коммутационным схемам или алгоритмам.

Простой метод кодирования один байт на символ недостаточен для текстовые строки с репертуаром символов размером до [ISO10646]. Есть несколько различных кодировок частей [ISO10646] в дополнение к кодировки всего набора символов (например, UCS-4).

5.2.1 Выбор кодировка

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

Серверы и прокси-серверы могут изменить кодировку символов (называется перекодирование ) на лету для удовлетворения запросов пользовательских агентов (см. раздел 14.2 [RFC2616], заголовок HTTP-запроса «Accept-Charset»). Серверы и прокси не должны обслуживать документ в кодировке символов, которая охватывает весь набор символов документа.

Часто используемые кодировки символов на Интернет включает ISO-8859-1 (также называемый «Latin-1»; подходит для большинства западноевропейские языки), ISO-8859-5 (с поддержкой кириллицы), SHIFT_JIS (a японская кодировка), EUC-JP (еще одна японская кодировка) и UTF-8 (кодировка ISO 10646 с использованием разного количества байтов для разных символов). Имена для кодировок символов регистр не учитывается, например, «SHIFT_JIS», «Shift_JIS» и «shift_jis» эквивалентны.

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

Соответствующие пользовательские агенты должны правильно отображать в ISO 10646 все символы в любых кодировках, которые они распознают (или они должны вести себя так, как если бы они это сделали).

Примечания по конкретным кодировкам

Когда текст HTML передается в кодировке UTF-16 (charset=UTF-16), текстовые данные должны передаваться в сетевом порядке байтов («прямой порядок байтов», сначала старший байт) в соответствии с [ISO10646], раздел 6.3 и [UNICODE], пункт C3, стр. 3-1.

Кроме того, чтобы максимизировать шансы на правильную интерпретацию, рекомендуется что документы, передаваемые как UTF-16, всегда начинаются с НУЛЕВОЙ ШИРИНЫ НЕРАЗРЫВНЫЙ ПРОБЕЛ (шестнадцатеричный FEFF, также называемый знаком порядка байтов). (BOM)), который при перестановке байтов становится шестнадцатеричным FFFE, символом гарантированно никогда не будет присвоено. Таким образом, пользовательский агент, получающий шестнадцатеричный FFFE как первые байты текста будет знать, что байты должны быть перевернуты для остаток текста.

Формат преобразования UTF-1 [ISO10646] (зарегистрированный IANA как ISO-10646-UTF-1) не следует использовать. За информацию об ISO 8859-8 и двунаправленном алгоритме см. раздел о двунаправленности и кодировка символов.

5.2.2 Указание кодировка символов

Как сервер определяет, какая кодировка символов применяется к документу это служит? Некоторые серверы проверяют первые несколько байтов документа или проверяют против базы данных известных файлов и кодировок. Многие современные серверы предоставляют Web осваивает больше контроля над конфигурацией кодировки, чем старые серверы. Интернет Мастера должны использовать эти механизмы для отправки параметра «charset» всякий раз, когда возможно, но следует позаботиться о том, чтобы не идентифицировать документ с неправильным значение параметра «charset».

Как пользовательский агент узнает, какая кодировка символов использовалась? сервер должен предоставить эту информацию. Самый простой способ для сервер для информирования пользовательского агента о кодировке символов документа использовать параметр «charset» Поле заголовка «Content-Type» протокола HTTP ([RFC2616], разделы 3.4 и 14.17). Например, следующее Заголовок HTTP сообщает, что используется кодировка символов EUC-JP:

.
Тип содержимого: текст/html; кодировка = EUC-JP
 

Пожалуйста, обратитесь к разделу о соответствии для определение текста/html.

Протокол HTTP ([RFC2616], раздел 3.7.1) упоминает ISO-8859-1 по умолчанию. кодировка символов, когда параметр «charset» отсутствует в Поле заголовка Content-Type. На практике эта рекомендация подтвердилась. бесполезно, потому что некоторые серверы не позволяют отправлять параметр «charset», и другие могут быть не настроены на отправку параметра. Следовательно, пользовательские агенты должны не принимайте какое-либо значение по умолчанию для параметра «charset».

Чтобы устранить ограничения сервера или конфигурации, HTML-документы могут включать явная информация о кодировке символов документа; Элемент META может использоваться для предоставления агентам пользователя этого Информация.

Например, чтобы указать, что кодировка символов текущего документа «EUC-JP», документ должен включать следующие Декларация META :


 

Объявление META должно использоваться только тогда, когда символ кодировка организована таким образом, что байты со значением ASCII обозначают символы ASCII. (по крайней мере, пока не будет проанализирован элемент META ). Объявления META должны появиться как можно раньше в Элемент HEAD .

Для случаев, когда ни протокол HTTP, ни Элемент META предоставляет информацию о кодировке символов документ, HTML также предоставляет кодировка атрибут на нескольких элементы. Комбинируя эти механизмы, автор может значительно улучшить вероятность того, что когда пользователь получит ресурс, пользовательский агент распознает кодировка символов.

Подводя итог, соответствующие пользовательские агенты должны соблюдать следующие приоритеты при определении документа. кодировка символов (от высшего приоритета к низшему):

  1. Параметр «charset» HTTP в поле «Content-Type».
  2. Объявление META с «http-equiv», установленным на «Content-Type» и значение, установленное для «charset».
  3. Атрибут charset , установленный для элемента, обозначающего внешний ресурс.

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

Пользовательские агенты могут предоставлять механизм, который позволяет пользователям информация о «кодировке». Однако, если пользовательский агент предлагает такой механизм, он должен предлагать его только для просмотра, а не для редактирования, чтобы избежать создания Веб-страницы, помеченные неверным параметром «charset».

Примечание. Если для конкретного приложения становится необходимо ссылаться на символы вне [ISO10646], символы должны быть назначены в частную зону, чтобы избежать конфликтов с настоящим или будущим версии стандарта. Однако это крайне нежелательно по причинам портативность.

Данная кодировка символов может не отображать все символы набор символов документа. Для таких кодировок или когда аппаратное или программное обеспечение конфигурации не позволяют пользователям напрямую вводить некоторые символы документа, авторы могут использовать ссылки на символы SGML. Персонаж ссылки — это независимый от кодировки символьный механизм для ввода любых символ из набора символов документа.

Ссылки на символы в HTML могут отображаться в двух формах:

  • Числовые ссылки на символы (десятичные или шестнадцатеричные).
  • Ссылки на сущности персонажей.

Ссылки на символы в комментариях не имеют особого значения; это только данные комментариев.

Примечание. HTML предоставляет другие способы представления символов данные, в частности встроенные изображения.

Примечание. В SGML можно удалить окончательный «;» после ссылки на символ в некоторых случаях (например, на разрыве строки или непосредственно перед тегом). В других обстоятельствах он не может быть устранен (например, в середине слова). Мы настоятельно рекомендуем использовать «;» во всех случаях чтобы избежать проблем с пользовательскими агентами, которые требуют, чтобы этот символ был подарок.

5.3.1 Числовые обозначения символов

Числовой символ ссылки указать код положение символа в наборе символов документа. Числовой символ ссылки могут иметь две формы:

  • Синтаксис «&# D ;», где D — десятичное число, относится к десятичному символьному номеру ISO 10646 D .
  • Синтаксис «&#x H ;» или «&#X H ;», где H шестнадцатеричное число, относится к шестнадцатеричному символьному номеру ISO 10646 Х . Шестнадцатеричные числа в числовых ссылках на символы нечувствительны к регистру.

Вот несколько примеров числовых ссылок на символы:

  • å (в десятичном формате) представляет собой букву «а» с маленьким кружком вверху. оно (используется, например, в норвежском языке).
  • å (в шестнадцатеричном формате) представляет один и тот же символ.
  • å (в шестнадцатеричном формате) также представляет тот же символ.
  • И (в десятичном виде) представляет собой кириллическую заглавную букву «I».
  • 水 (в шестнадцатеричном формате) представляет собой китайский иероглиф для вода.

Примечание. Хотя шестнадцатеричное представление не определено в [ISO8879], ожидается, что он будет в редакции, как описано в [ВЕБСГМЛ]. Это соглашение особенно полезно, поскольку стандарты символов обычно используют шестнадцатеричные представления.

5.3.2 Ссылки на объекты символов

Чтобы предоставить авторам более интуитивно понятный способ обращения к персонажам в набор символов документа, HTML предлагает набор из ссылки на сущности персонажей. Использование ссылок на сущности символов символические имена, чтобы авторам не нужно было запоминать код позиции. Например, ссылка на объект персонажа å относится к строчной букве «а», увенчанной кольцом; «&кольцо;» легче помните, чем å.

HTML 4 не определяет ссылку на сущность символа для каждого символа в набор символов документа. Например, нет сущности персонажа ссылка на кириллическую заглавную букву «I». Пожалуйста, ознакомьтесь с полным списком ссылок на символы, определенных в HTML. 4.

Ссылки на символьные объекты чувствительны к регистру. Таким образом, Å относится к другому символу (верхний регистр A, кольцо), чем &кольцо; (строчная а, кольцо).

Ссылки на четырехсимвольные сущности заслуживают особого упоминания, поскольку они часто используется для экранирования специальных символов:

  • «<» представляет знак <.
  • «>» представляет знак >.
  • «&» представляет знак &.
  • «» представляет собой метку «.

Авторы, желающие поместить в текст символ «<", должны использовать "<" (десятичное число ASCII 60), чтобы избежать возможной путаницы с началом тега. (открывающий разделитель начального тега). Точно так же авторы должны использовать ">" (ASCII десятичное число 62) в тексте вместо «>», чтобы избежать проблем со старыми пользовательскими агентами. которые неправильно воспринимают это как конец тега (разделитель закрытия тега), когда он появляется в значениях атрибутов в кавычках.

Авторы должны использовать «&» (десятичное число ASCII 38) вместо «&» для избегайте путаницы с началом ссылки на символ (ссылка на сущность открытый разделитель). Авторы также должны использовать «&» в значениях атрибутов с ссылки на символы разрешены в пределах Значения атрибута CDATA.

Некоторые авторы используют ссылку на объект персонажа «"» кодировать экземпляры двойной кавычки («»), так как этот символ может использоваться для разграничить значения атрибутов.

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

Поскольку в таких случаях можно сделать много разных вещей, это документ не предписывает какого-либо конкретного поведения. В зависимости от реализация, неотображаемые символы также может обрабатываться базовой системой отображения, а не приложением. сам. При отсутствии более сложного поведения, например, адаптированного к потребности конкретного сценария или языка, мы рекомендуем следующее поведение для пользовательских агентов:

  1. Использовать хорошо заметный, но ненавязчивый механизм для оповещения пользователя о недостающие ресурсы.
  2. Если отсутствующие символы представлены с использованием их числового представления, используйте шестнадцатеричная (не десятичная) форма, так как это форма, используемая в наборе символов стандарты.


предыдущий   следующий содержимое   элементы атрибуты индекс

Что это такое и почему это должно быть интересно программистам

Кодировка HTML используется для того, чтобы веб-браузеры анализировали специальные символы, отличные от ASCII, в документах HTML со стандартной формой. это процесс отправить информацию заголовка на сервер , чтобы текст отображался как текст, а не как HTML-коды.

Если вы новичок в программировании HTML, эта статья здесь, чтобы дать вам полное представление о кодировании символов при написании разметки.

Содержание

  • Ключевые моменты статьи
  • Что такое кодирование символов в HTML
    • – Что такое символы в языках кодирования
    • – Важность URL-адресов
  • Знакомство с кодировкой ASCII и кодировкой  в HTML. Справочник по кодировке символов
  • Кодировка HTML: набор символов UTF 8
  • Кодировка HTML URL: эффективная адресация запросов страниц
  • Кодировка символов HTML: процесс применения Документы
  • Объявление закодированных символов HTML в HTTP
  • Что такое декодирование в HTML
  • Экранирующие символы в закодированных документах HTML
  • Заключительный совет: никогда не встречайте «?» Опять таки!
  • Подведение итогов

Ключевые моменты статьи

  • Понимание кодировки символов HTML
  • Как объявить кодировку в документах HTML
  • Справочник по HTML для кодировки URL
  • Что такое кодировка ASCII
  • Применение

Большое количество символов, используемых при написании разметки, требует использования кодировки символов . Этот прием особенно необходим авторам разметки при работе с иностранными языками, высокотехнологичными математическими символами и другими специальными символами в дополнение к стандартным латинским буквам и арабским цифрам. Потому что контент часто может конфликтовать со стандартным кодом.

Например, при использовании менее (<) или более (>) знаков — , если они не закодированы должным образом , браузер будет интерпретировать эти символы как начальный и закрывающий теги HTML. Полное неверное толкование, из-за которого ваш контент может выглядеть чужеродным. Итак, вы видите, что это не только вопрос удобочитаемости для человека, серверы и браузеры также должны иметь возможность понимать ваши данные.

Что такое кодировка символов в HTML

Кодировка символов в основном представляет собой 9Метод сопоставления 0006 для определения текста и байтов отдельно в документах HTML. Чтобы понять кодировку символов, авторы должны понимать, что такое символы.

– Что такое символы в языках кодирования

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

Текст, изображения, графика, видео, компиляции данных и все другие формы информации, которые появляются у читателя веб-сайта, состоят из «символов» содержимого веб-страницы. Какой ключ использовался для кодирования текста, определяет, как последовательность байтов преобразуется в символы. В этом случае ключ называется кодировкой символов.

– Важность URL-адресов

URL-адрес используется веб-браузерами для запроса страниц с веб-серверов . Веб-браузеры могут расшифровывать только набор символов ASCII, в котором всего 128 символов и только 9 символов. 5 из которых можно распечатать. Но URL-адреса часто нуждаются в символах за пределами 128 символов. В этом случае для определения наборов иностранных символов используется кодировка символов .

Со стороны браузера документов с разными кодировками HTML будут отображаться по-разному. Надлежащее их использование находится в ведении автора разметки.

Знакомство с кодировкой ASCII и справочником по кодировке символов HTML

ASCII — это код передачи является производным от Американского стандартного кода для обмена информацией, созданного в 1960-х годах. Его можно использовать на основных электронных устройствах и компьютерах для обмена буквами, знаками препинания и цифрами, а также управляющих символов, которые являются непечатаемыми символами на основе телексной технологии, такими как разрывы строк или табуляции.

Коды ASCII работают так же, как работают калькуляторы, в которых двоичные системы управляют всей вычислительной системой. В семи битах — семи цифрах, обозначающих либо ноль, либо единицу — исходный стандарт ASCII определяет другие символы . Всего он определяет только 128 (27) символов, из которых 33 непечатаемых и 95 печатных символов.

Традиционно восьмой бит, равный одному полному байту, по-прежнему используется для проверки данных . Именно этот бит используется в расширенных версиях на основе ASCII для увеличения количества доступных символов до 256. (28).

Хотя кодировка UTF-8 стала более важной при представлении текста , 7-битная версия ASCII до сих пор широко используется. UTF-8 обладает привилегией обратной совместимости, поскольку является подмножеством ASCII. Таким образом, он распознает 128 двоичных символов. Старый метод кодирования все еще используется в электронных письмах и URL-адресах, потому что ASCII является наименьшим общим знаменателем большинства новых форм кодирования.

Кодировка HTML Набор символов UTF 8

Существует несколько преимуществ использования UTF-8 , но, прежде всего, он полностью совместим со специальными символами ASCII, что делает его незаменимым инструментом для написания разметки для иностранного языка. страницы.

Кроме того, его можно использовать и с собственной XML-разметкой. Чтобы объявить наборы символов HTML в кодировке UTF-8 , вам понадобится следующий тег:

Форматы кодировки символов UTF-8, UTF-16 и UTF-32 были опубликованы организацией на протяжении многих лет.

В 2008 году был выпущен формат кодировки символов HTML UTF-8. К 2019 году он будет использоваться на более чем 90 процентов всех веб-сайтов . Консорциум World Web также рекомендует использовать его в качестве кодировки символов HTML по умолчанию.

HTML-кодирование URL-адресов: эффективная адресация запросов страниц

Поскольку Интернет может понимать только набор символов ASCII, кодирование URL-адресов является золотым правилом преобразования всех символов, отличных от ASCII, в читаемые или совместимые символы.

Недопустимые символы ASCII заменяются знаком «%» (без кавычек), за которым следуют две шестнадцатеричные цифры в URL-адресе. Пробелы считаются недопустимыми символами в URL-адресах, в большинстве случаев кодировка пробелов HTML заменяет пробел знаком плюс (+) или знаком %20.

Таким образом, в кодировке HTML UTF 8 играет ключевую роль, и она не чувствительна к регистру, вы можете печатать как угодно, только убедитесь, что она есть.

Кодировка символов HTML: процесс применения

Тег в заголовке тщательно закодированных веб-страниц объявляет кодировку для браузера. Если на вашей веб-странице нет этого тега, браузер не сможет интерпретировать страницу с вашим контентом, что приведет к появлению тарабарщины в содержании.

Процесс интерпретация символов , элементов и атрибутов в теге HTML в целом называется кодировкой тега . Кодирование тегов особенно важно для платформ с открытым циклом, таких как платежные шлюзы. Представьте, если система выйдет из строя в процессе платежной транзакции! Это серьезная угроза для клиентов и большая ответственность для веб-разработчиков и авторов контента! Так что будьте осторожны.

Авторы разметки всегда получают сообщение о том, что объявление HTML-документа — это не то, как вы можете указать серверу изменить байты. 9Текстовый файл 0006 должен быть сохранен в той же кодировке , чтобы завершить процесс. Если вы используете программное обеспечение для редактирования, оно, скорее всего, будет иметь кодировку UTF-8 по умолчанию. Однако, если вы работаете с локальными файлами на своем компьютере, вы можете перепроверить настройки и, если они еще не находятся в желаемой кодировке, измените их.

Кодирование HTML: работа с документами XML и XHTML

Поскольку заголовки HTTP часто имеют приоритет над метадекларациями в документе, авторам всегда следует проверять , если заголовок HTTP уже имеет объявление по умолчанию . Конечно, это с учетом того, есть ли у них доступ к нему. Если он уже объявлен, то же самое должно быть и с метаэлементом.

Однако, если вы работаете с XML-документами, метаобъявления могут не работать до тех пор, пока вы не перенесете свой HTML-документ в XHTML. В этом случае вы должны использовать атрибут charset и избегать прагм. Во всех случаях сохраняйте документы в кодировке UTF-8.

Объявление закодированных символов HTML в HTTP

В соответствии с правилами объявления кодировки символов для заголовков HTTP, переопределяет все объявления на странице . До тех пор, пока вы не измените настройки сервера, как упоминалось ранее, вы не сможете получить одно и то же объявление как в заголовке HTTP, так и в теле содержимого.

Итак, если вы работаете с клиентом или в команде, вам нужно попросить своего клиента или менеджера предоставить вам этот доступ для управления декларациями . Это отчасти единственный способ.

В некоторых случаях авторы разметки изменяют объявления с ограниченным доступом к серверу. Проверьте заголовок HTTP, если кодировка символов уже объявлена, вы можете изменить информацию о кодировке либо локально для контента, созданного с помощью языков сценариев, либо через набор файлов на сервере. Существует онлайн-инструментов для проверки сгенерированной сервером кодировки , W3C очень популярен.

Наконец, можно использовать параметр набора символов HTTP. Любой текст, обычный текст или HTML-редактор Документы, передаваемые по протоколу HTTP, могут отправлять параметр charset в заголовке HTTP , чтобы указать кодировку символов документа . Явно помечая веб-документ, чтобы указать шаблон предпочтения кодирования для браузеров. Синтаксис параметра charset обычно выглядит следующим образом:

Content-Type: text/html; кодировка=utf-8

Идея состоит в том, что HTTP 1.1 указывает ISO-8859-1 в качестве кодировки по умолчанию, когда нет явного параметра charset, браузеры используют предпочтительную кодировку читателя, потому что слишком много непомеченных документов в других кодировках.

Что такое декодирование в HTML

Это просто то, на что это похоже — декодирование является обратным преобразованием закодированных символов HTML в их прежнюю форму. Да, вы всегда можете это сделать, если возникнет необходимость.

Декодирование работает путем преобразования закодированных строк HTML с числовыми ссылками на символы для передачи HTTP в строку, которая была первоначально сформирована. Вы можете найти множество бесплатных онлайн-инструментов и платформ, чтобы сделать это быстро. Существуют инструменты, которые позволяют вводить как текстовые строки, так и файлы. Файловые входные данные более полезны для больших данных, а текстовые входные данные удобны для коротких строковых данных.

В зависимости от содержимого вывода, вам будет предоставлен результат в виде текста или шестнадцатеричного дампа, а также файл, который вы можете скачать. Вывод простого текста или шестнадцатеричного дампа может быть усечен, если вывод большой, но вывод файла всегда будет полным.

Escape-символы в закодированных HTML-документах

Escape-символы могут быть особенно полезны для представления символов, которые не поддерживаются кодировкой документа, китайских, хинди, датских символов — некоторые примеры — они нужны вам для настройки неанглоязычного текста , но вы не можете найти символы в наборе символов ASCII. Вы можете сделать это в документе с кодировкой UTF-8.

Авторы всегда должны экранировать следующими тремя символами, чтобы они не мешали синтаксису разметки:

  • < (<)
  • > (>)
  • & (&)

И это правило применяется как к документам HTML, так и к документам XML. ‘

Аналогичный прием применяется для с использованием символов одинарной (‘) и двойной кавычки («). Когда вам нужно использовать тот же тип кавычек, что и те, которые окружают значение атрибута, это определенно имеет место в тексте атрибута.

Невидимые или неоднозначные символы могут быть представлены escape-последовательностью. Неразрывный пробел U+00A0, например, , может мешать разрывам страниц , отображаясь как пробел. «  или   « Символ кодирования пространства HTML полезен для ясности.

Заключительные слова совета: никогда не сталкивайтесь с «?» Опять таки!

Среди нескольких жизненно важных вещей, которые вы можете получить в этой статье, давая вам представление о кодировании в HTML, вот еще один совет:

При создании динамических веб-страниц следите за своими шрифтами и макетами, как и с кодировкой. Не все шрифты поддерживают все символы и оставляют вас со знаком «?».

Подведение итогов

Давайте повторим все, что мы узнали о кодировании HTML здесь и сейчас:

  • Кодирование символов HTML помогает отображать текст и байты в документах HTML
  • Авторы всегда должны сохранять документы в кодировке HTML UTF-8
  • Использовать процентное кодирование для URL-адресов
  • Проверка наличия метаобъявлений при работе с XML и XHTML
  • Методы объявления кодировки символов HTML в HTTP
  • Как экранировать символы
  • Как вернуть вашим персонажам прежнюю форму

Теперь, когда у вас есть базовые знания обо всей вышеизложенной информации, попробуйте каждый метод самостоятельно. В конце концов, практика делает его совершенным.

  • Автор
  • Последние сообщения

Позиция решает все

Должность — это все: ваш ресурс для изучения и создания: CSS, JavaScript, HTML, PHP, C++ и MYSQL.

Последние сообщения от Position is Everything (посмотреть все)

Справочник по URL-кодированию

Справочник по URL-кодированию

Ниже приведены ссылки на символы ASCII в Форма URL-кодирования (шестнадцатеричный формат).

Шестнадцатеричные значения могут использоваться для отображения нестандартных букв и символов в браузерах и плагины.


URL-кодирование от %00 до %8f
Значение ASCII URL-кодирование Значение ASCII URL-кодирование Значение ASCII URL-кодирование
%00 0 %30 ` %60
  %01 1 %31 и %61
  %02 2 %32 б %62
  %03 3 %33 в %63
  %04 4 %34 д %64
  %05 5 %35 и %65
  %06 6 %36 ф %66
  %07 7 %37 г %67
пробел %08 8 %38 ч %68
вкладка %09 9 %39 и %69
перевод строки %0a : %3а и %6а
  %0b ; %3b к %6b
  %0с < %3c л %6с
с возвратом %0d = %3d м %6д
  %0e > %3e и %6e
  %0f ? %3f или %6f
  %10 @ %40 р %70
  %11 А %41 д %71
  %12 Б %42 р %72
  %13 С %43 с %73
  %14 Д %44 т %74
  %15 Е %45 и %75
  %16 Ф %46 против %76
  %17 Г %47 с %77
  %18 Х %48 х %78
  %19 я %49 и %79
  %1а Дж %4а из %7а
  %1b К %4b { %7b
  %1c л %4с | %7c
  %1д М %4д } %7d
  %1e Н %4е ~ %7e
  %1f О %4f   %7f
пробел %20 Р %50 %80
! %21 В %51   %81
» %22 Р %52 %82
# %23 С %53 ƒ %83
$ %24 Т %54 %84
% %25 У %55 %85
и %26 В %56 %86
%27 Вт %57 %87
( %28 х %58 ˆ %88
) %29 Д %59 %89
* %2а З %5а Ш %8а
+ %2b [ %5b %8b
, %2с \ %5c %8c
%2d ] 9 %5e Ž %8e
/ %2f _ %5f   %8f

URL-кодирование от %90 до %ff
Значение ASCII URL-кодирование Значение ASCII URL-кодирование Значение ASCII URL-кодирование
  %90 %c0 %f0
%91 ​​ %c1 %f1
%92 %c2 %f2
» %93 %c3 %f3
%94 %c4 %f4
%95 %c5 %f5
%96 %c6 %f6
%97 %с7 %f7
~ %98 %с8 %f8
%99 %с9 %f9
š %9а %ca %пк
%9b %кб %fb
%9с % куб. см %фк
  %9d %кд %fd
ž %9e %ce %fe
Ÿ %9f %cf %ff
  %a0 %d0    
%a1 %d1    
%а2 %d2    
%a3 %d3    
  %а4 %d4    
%a5 %d5    
| %а6 %d6    
%a7   %d7    
%а8 %d8    
%а9 %d9    
%aa %дн    
%ab % дб    
%акр % постоянного тока    
%ad % дд    
% кэ% от    
% от %df    
%b0 %e0    
%b1 %e1    
%b2 %e2    
%b3 %e3    
%b4 %e4    
%b5 %e5    
%b6 %e6    
%b7 %e7    
%b8 %e8    
%b9 %e9    
%ба % шт.    
%bb %эб    
%bc %эк    
%бд % ред    
%be %ее    
%бф %еф    

Узнайте, как использовать метакодировку

TL;DR. Указание правильной кодировки HTML предотвратит сбой отображения в браузере специальных символов.

Содержание
  • 1. Понимание кодировки символов HTML
  • 2. ASCII: самый простой набор символов
  • 3. Лучший вариант: UTF-8
  • 4. Альтернативные кодировки HTML
  • 1 Полезные советы 91 5. HTML Encoding

Понимание кодировки символов HTML

Потребность в кодировке символов возникает из-за огромного выбора доступных символов. Помимо привычных вам латинских букв и арабских цифр, есть также иностранные алфавиты, математические символы и другие специальные символы. Однако документы, для которых определены разные кодировки HTML, могут отображать их по-разному.

Неправильно интерпретированный текст приводит к множеству проблем:

  • Пользователи не могут правильно прочитать текст
  • Поисковые системы не могут найти данные
  • Машины не могут обрабатывать информацию

Все доступные символы сгруппированы в определенные наборы (также называемые наборами символов для краткости). Определив кодировку HTML, вы позволите браузеру получить доступ к определенному набору и правильно отобразить его символы.

Примечание: У японцев даже есть специальный термин для плохо интерпретируемого набора символов — модзибаке (文字化け).

ASCII: самый простой набор символов

Первая и простейшая кодировка символов HTML называется ASCII . Большинство современных наборов символов используют его в качестве стандартной базы.

ASCII означает Американский стандартный код для обмена информацией. Он был разработан на основе телеграфного кода в начале 1960-х годов и содержит 128 символов , 95 из которых печатные :

  • Строчные латинские буквы
  • Прописные латинские буквы
  • Знаки пунктуации
  • Числа от 0 до 9

33 непечатаемых символа также называются управляющими символами . Это прозрачные символы — например, те, которые позволяют разделять слова или абзацы.

Однако популярность ASCII падала по мере роста Интернета международный . Только поддержки латинских символов быстро стало недостаточно.

Pros

  • Упрощенный дизайн (нет ненужной информации)
  • Высококачественные курсы (даже бесплатные)
  • Разнообразие функций

Основные функции

  • Nanodegree программ
  • .
  • Платные сертификаты об окончании

ЭКСКЛЮЗИВ: СКИДКА 75%

Плюсы

  • Легко для навигации
  • Нет технических проблем
  • , похоже, заботятся о своих пользователях

Основные функции

  • Огромное разнообразие курсов
  • 30-дневная политика возврата
  • Бесплатные сертификаты завершения

AS AS. НИЗКАЯ 12,99$

Pros

  • Отличный пользовательский интерфейс
  • Предлагает качественный контент
  • Очень прозрачно с ценами

Основные функции

  • Бесплатные сертификаты о завершении
  • Основаны на навыках науки о данных
  • для согласованности кодировки символов. Он был опубликован в начале 1990-х и имеет несколько кодировок, таких как UTF-8, UTF-16 и UTF-32.

    UTF-8 означает 8-битный формат преобразования Unicode и с 2008 года носит титул самой популярной кодировки символов HTML. К 2019 году, более 90 процентов всех веб-сайтов используют кодировку UTF-8. Консорциум World Web также рекомендует использовать кодировку символов HTML по умолчанию.

    Существует несколько веских причин для использования UTF-8:

    • Он поддерживает многие языки .
    • Полностью совместим с с ASCII.
    • Изначально используется XML .
    • Он использует на меньше места , чем другие кодировки Unicode.

    Чтобы объявить UTF-8 в качестве предпочтительной кодировки символов HTML, вам потребуется использовать тег с параметром charset атрибут и UTF-8 в качестве его значения:

    Альтернативные кодировки HTML

    Вы можете найти массу альтернативных кодировок в Encoding Living Standard Рабочей группой по технологиям веб-гипертекстовых приложений (WHATWG). Однако мы настоятельно рекомендуем вам использовать UTF-8, так как другие кодировки содержат меньший набор символов, что может вызвать проблемы при отображении вашего веб-сайта.

    Кодировка HTML: Полезные советы

    • Правильное отображение ваших символов зависит не только от кодировки, но и от выбранного шрифта : не все из них имеют версии для каждого символа. Если в выбранном вами шрифте нет нужного вам символа, он либо будет искать совпадения в других шрифтах , либо отобразит другой символ (например, вопросительный знак).
    • Не забывайте, что при сохранении также необходимо указать кодировку HTML.0007 ваш документ.

    Кодирование HTML | Расширения ASP.NET MVC

    • 7 минут на чтение

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

    Расширения DevExpress ASP.NET MVC реализуют свойство EncodeHtml, которое позволяет кодировать значение расширения и содержимое элемента. Когда свойство установлено на true , расширение преобразует угловые скобки ( < и > символов) в ссылки на символы ( < и > ) и отображает HTML-код в виде текста.

    Свойство EncodeHtml игнорирует значения и содержимое элемента, указанные на клиенте.

    Этот раздел состоит из разделов, описывающих, как кодирование HTML реализовано в конкретном расширении DevExpress ASP.NET MVC.

    Бинарное изображение

    Свойство BinaryImageEditSettings.EncodeHtml кодирует следующие значения свойства BinaryImageEditExtension:

    • BinaryImageEditSettings.Properties.Caption
    • BinaryImageEditSettings.Properties.CaptionSettings. OptionalMark
    • BinaryImageEditSettings.Properties.CaptionSettings.RequiredMark

    Кнопка

    Свойство ButtonSettings.EncodeHtml кодирует значение свойства ButtonSettings.Text объекта ButtonExtension.

    ButtonEdit

    Свойство ButtonEditSettings.EncodeHtml кодирует следующие значения свойства ButtonEditExtension:

    • Текст отдельных кнопок
    • ButtonEditSettings.Properties.Caption
    • ButtonEditSettings.Properties.HelpText
    • ButtonEditSettings.Properties.CaptionSettings.OptionalMark
    • ButtonEditSettings.Properties.CaptionSettings.RequiredMark

    Расширение всегда кодирует значения свойств ButtonEditSettings.Text и ButtonEditSettings.Properties.NullText.

    Календарь

    Свойство CalendarSettings.EncodeHtml кодирует следующие значения свойства CalendarExtension:

    • CalendarSettings.Properties.ClearButtonText
    • CalendarSettings.Properties.TodayButtonText
    • CalendarSettings. Properties.FastNavProperties.CancelButtonText
    • CalendarSettings.Properties.FastNavProperties.OkButtonText

    Капча

    Свойство CaptchaSettings.EncodeHtml кодирует следующие значения свойства CaptchaExtension:

    • CaptchaSettings.RefreshButton.Text
    • CaptchaSettings.TextBox.LabelText
    • CaptchaSettings.ValidationSettings.ErrorText
    • CaptchaSettings.ValidationSettings.RequiredField.ErrorText

    Расширение всегда кодирует значение свойства CaptchaSettings.TextBox.NullText.

    КардВью

    Свойство столбца PropertiesEdit.EncodeHtml кодирует значения ячеек столбца в CardViewExtension.

    Свойство CardViewSettings.SettingsBehavior.EncodeErrorHtml кодирует тексты ошибок расширения. Задайте для свойства CardViewSettings.SettingsCommandButton.EncodeHtml значение 9.2100 true для кодирования текста командной кнопки.

    Флажок

    Свойство CheckBoxSettings.EncodeHtml кодирует значение свойства CheckBoxSettings. Text CheckBoxExtension.

    Чекбокслист

    Свойство CheckBoxListSettings.EncodeHtml кодирует следующие значения свойства CheckBoxListExtension:

    • Текст отдельных позиций
    • Стоимость отдельных позиций

    ColorEdit

    Свойство ColorEditSettings.EncodeHtml кодирует следующие значения свойства ColorEditExtension:

    • Текст отдельных кнопок
    • ColorEditSettings.Properties.Caption
    • ColorEditSettings.Properties.HelpText
    • ColorEditSettings.Properties.CaptionSettings.OptionalMark
    • ColorEditSettings.Properties.CaptionSettings.RequiredMark
    • ColorEditSettings.Properties.ClearButton.Text
    • ColorEditSettings.Properties.DropDownButton.Text

    Значения следующих свойств всегда кодируются:

    • ColorEditSettings.Properties.CancelButtonText
    • ColorEditSettings.Properties.NullText
    • ColorEditSettings.Properties.OkButtonText

    Комбинированный ящик

    Свойство ComboBoxSettings. EncodeHtml кодирует следующие значения свойства ComboBoxExtension:

    • Текст отдельных кнопок
    • Текст отдельных позиций
    • ComboBoxSettings.ClearButton.Text
    • ComboBoxSettings.DropDownButton.Text
    • ComboBoxSettings.Properties.Caption
    • ComboBoxSettings.Properties.HelpText
    • ComboBoxSettings.Properties.CaptionSettings.OptionalMark
    • ComboBoxSettings.Properties.CaptionSettings.RequiredMark

    Расширение всегда кодирует значение свойства ComboBoxSettings.Properties.NullText.

    Свойство ComboBoxSettings.EncodeHtml не действует для содержимого шаблона элемента. Вызовите метод HttpUtility.HtmlEncode, чтобы закодировать его.

    ДатаРедактировать

    Свойство DateEditSettings.EncodeHtml кодирует следующие значения свойства DateEditExtension:

    • Текст отдельных кнопок
    • DateEditSettings.Properties.Caption
    • DateEditSettings.Properties.HelpText
    • DateEditSettings. Properties.ClearButton.Text
    • DateEditSettings.Properties.DropDownButton.Text
    • DateEditSettings.Properties.CalendarProperties.ClearButtonText
    • DateEditSettings.Properties.CalendarProperties.TodayButtonText
    • DateEditSettings.Properties.CaptionSettings.OptionalMark
    • DateEditSettings.Properties.CaptionSettings.RequiredMark
    • DateEditSettings.Properties.TimeSectionProperties.CancelButtonText
    • DateEditSettings.Properties.TimeSectionProperties.OkButtonText
    • DateEditSettings.Properties.CalendarProperties.FastNavProperties.CancelButtonText
    • DateEditSettings.Properties.CalendarProperties.FastNavProperties.OkButtonText

    Расширение всегда кодирует значение свойства DateEditSettings.Properties.NullText.

    DataView

    Свойство DataViewSettings.EncodeHtml кодирует заголовки кнопок пейджера DataViewExtension.

    Свойство DataViewSettings.EncodeHtml не действует для содержимого шаблона элемента. Вызовите метод HttpUtility.HtmlEncode, чтобы закодировать его.

    Расширение не кодирует значения свойств DataViewSettings.PagerSettings.ShowMoreItemsText и DataViewSettings.EmptyDataText и отображает эти значения как HTML-разметку.

    Диаграмма

    Свойство DiagramSettings.EncodeHtml кодирует заголовок отдельных настраиваемых фигур в расширении диаграммы.

    Расширение всегда кодирует следующие значения свойств:

    • DefaultText отдельных пользовательских фигур
    • Название отдельных групп инструментов
    • Содержимое фигуры (кроме шаблонов, которые указаны на клиенте)

    Раскрывающийся список

    Свойство DropDownEditSettings.EncodeHtml кодирует следующие значения свойства DropDownEditExtension:

    • Текст отдельных кнопок
    • DropDownEditSettings.Properties.Caption
    • DropDownEditSettings.Properties.HelpText
    • DropDownEditSettings.Properties.CaptionSettings.OptionalMark
    • DropDownEditSettings. Properties.CaptionSettings.RequiredMark
    • DropDownEditSettings.Properties.ClearButton.Text
    • DropDownEditSettings.Properties.DropDownButton.Text

    Расширение всегда кодирует значения свойств DropDownEditSettings.Text и DropDownEditSettings.Properties.NullText.

    Управление фильтром

    Свойство столбца PropertiesEdit.EncodeHtml кодирует значения ячеек столбца в FilterControlExtension.

    ФормМакет

    Свойство FormLayoutSettings.EncodeHtml кодирует заголовок отдельных элементов в FormLayoutExtension.

    Гант

    GanttExtension всегда кодирует следующие значения свойств:

    • Ресурсы
    • Подсказки заданий
    • Названия задач
    • Текст отдельных элементов панели инструментов

    Расширение не кодирует значения свойств Caption и ToolTip отдельных столбцов в списке задач и отображает эти значения как HTML-разметку.

    GridView

    Задайте для свойства столбца PropertiesEdit. EncodeHtml значение true для кодирования значений ячеек столбца в GridViewExtension.

    Свойство GridViewSettings.SettingsBehavior.EncodeErrorHtml кодирует тексты ошибок расширения.

    Подсказка

    Свойство HintSettings.EncodeHtml кодирует следующие значения свойства HintExtension:

    • HintSettings.Content
    • HintSettings.Title

    Свойство HintSettings.EncodeHtml не действует для содержимого подсказки, указанного на стороне клиента.

    HtmlEditor

    Свойство HtmlEditorSettings.EncodeHtml кодирует следующие значения свойства HtmlEditorExtension:

    • Текст отдельных пунктов контекстного меню
    • HtmlEditorSettings.SettingsValidation.ErrorText
    • HtmlEditorSettings.SettingsValidation.RequiredField.ErrorText

    Расширение не кодирует значения свойств Text и Value отдельных настраиваемых элементов панели инструментов и отображает эти значения как HTML-разметку.

    Свойство HyperLinkSettings. EncodeHtml кодирует значение свойства HyperLinkSettings.Properties.Text для HyperLinkExtension.

    Галерея изображений

    Свойство ImageGallerySettings.EncodeHtml кодирует следующие значения свойства ImageGalleryExtension:

    • FullscreenViewerText отдельных элементов
    • Текст отдельных позиций

    Расширение не кодирует следующие значения свойств и отображает эти значения как HTML-разметку:

    • ImageGallerySettings.EmptyDataText
    • ImageGallerySettings.PagerSettings.ShowMoreItemsText

    ImageSlider

    Свойство ImageSliderSettings.EncodeHtml кодирует текст отдельных элементов в ImageSliderExtension.

    Этикетка

    Свойство LabelSettings.EncodeHtml кодирует значение свойства LabelSettings.Text объекта LabelExtension.

    Окно списка

    Свойство ListBoxSettings.EncodeHtml кодирует следующие значения свойства ListBoxExtension:

    • Текст отдельных позиций
    • Стоимость отдельных позиций
    • ListBoxSettings. Properties.Caption
    • ListBoxSettings.Properties.CaptionSettings.OptionalMark
    • ListBoxSettings.Properties.CaptionSettings.RequiredMark

    Свойство ListBoxSettings.EncodeHtml не действует для содержимого шаблона элемента. Вызовите метод HttpUtility.HtmlEncode, чтобы закодировать его.

    Меморандум

    Свойство MemoSettings.EncodeHtml кодирует следующие значения свойства MemoExtension:

    • MemoSettings.Caption
    • MemoSettings.HelpText
    • MemoSettings.Properties.CaptionSettings.OptionalMark
    • MemoSettings.Properties.CaptionSettings.RequiredMark

    Расширение всегда кодирует значения свойств MemoSettings.Text и MemoSettings.Properties.NullText.

    Свойство MenuSettings.EncodeHtml кодирует текст отдельных элементов в MenuExtension.

    НавБар

    Свойство NavBarSettings.EncodeHtml кодирует следующие значения свойства NavBarExtension:

    • Текст отдельных групп
    • Текст отдельных элементов группы

    ПейджКонтроль

    Свойство PageControlSettings. EncodeHtml кодирует текст отдельных вкладок в PageControlExtension.

    Свойство PopupControlSettings.EncodeHtml кодирует следующие значения свойства PopupControlExtension:

    • PopupControlSettings.FooterText
    • PopupControlSettings.HeaderText
    • PopupControlSettings.Text

    Свойство PopupMenuSettings.EncodeHtml кодирует текст отдельных элементов в PopupMenuExtension.

    Радиокнопка

    Свойство RadioButtonSettings.EncodeHtml кодирует значение свойства RadioButtonExtension RadioButtonSettings.Text.

    Список радиокнопок

    Свойство RadioButtonListSettings.EncodeHtml кодирует следующие значения свойства RadioButtonListExtension:

    • Текст отдельных позиций
    • Стоимость отдельных позиций
    • RadioButtonListSettings.Properties.Caption
    • RadioButtonListSettings.Properties.CaptionSettings.OptionalMark
    • RadioButtonListSettings.Properties.CaptionSettings.RequiredMark

    Лента

    Свойство RibbonSettings. EncodeHtml кодирует следующие значения свойства RibbonExtension:

    • Текст отдельных вкладок
    • Текст отдельных групп вкладок
    • Текст отдельных элементов группы

    RichEdit

    Свойство RichEditSettings.EncodeHtml кодирует элементы управления ленты и всплывающих окон RichEditExtension. Расширение всегда кодирует свое содержимое.

    Круглая панель

    Свойство RoundPanelSettings.EncodeHtml объекта RoundPanelExtension не действует, если для свойства RoundPanelSettings.View задано значение Standard . Если для свойства RoundPanelSettings.View установлено значение GroupBox свойство RoundPanelSettings.EncodeHtml кодирует значение свойства RoundPanelSettings.HeaderText.

    SpinEdit

    Свойство SpinEditSettings.EncodeHtml кодирует следующие значения свойства SpinEditExtension:

    • Текст отдельных кнопок
    • SpinEditSettings.Properties.Caption
    • SpinEditSettings. Properties.HelpText
    • SpinEditSettings.Properties.CaptionSettings.OptionalMark
    • SpinEditSettings.Properties.CaptionSettings.RequiredMark
    • SpinEditSettings.Properties.ClearButton.Text

    Расширение всегда кодирует значение свойства SpinEditSettings.Properties.NullText.

    Электронная таблица

    Свойство SpreadsheetSettings.EncodeHtml кодирует элементы управления лентой и всплывающими окнами расширения SpreadsheetExtension. Расширение всегда кодирует свое содержимое.

    ТабКонтроль

    Свойство TabControlSettings.EncodeHtml кодирует текст отдельных вкладок в TabControlExtension.

    Текстовое поле

    Свойство TextBoxSettings.EncodeHtml кодирует следующие значения свойства TextBoxExtension:

    • TextBoxSettings.Properties.Caption
    • TextBoxSettings.Properties.HelpText
    • TextBoxSettings.Properties.CaptionSettings.OptionalMark
    • TextBoxSettings.Properties.CaptionSettings. RequiredMark

    Расширение всегда кодирует значения свойств TextBoxSettings.Text и TextBoxSettings.Properties.NullText.

    ВремяПравить

    Свойство TimeEditSettings.EncodeHtml кодирует следующие значения свойства TimeEditExtension:

    • Текст отдельных кнопок
    • TimeEditSettings.Properties.Caption
    • TimeEditSettings.Properties.HelpText
    • TimeEditSettings.Properties.CaptionSettings.OptionalMark
    • TimeEditSettings.Properties.CaptionSettings.RequiredMark
    • TimeEditSettings.Properties.ClearButton.Text

    Расширение всегда кодирует значение свойства TimeEditSettings.Properties.NullText.

    TokenBox

    Свойство TokenBoxSettings.EncodeHtml кодирует следующие значения свойства TokenBoxExtension:

    • Текст отдельных позиций
    • Стоимость отдельных позиций
    • TokenBoxSettings.Properties.Caption
    • TokenBoxSettings.Properties.HelpText
    • TokenBoxSettings. Properties.Tokens
    • TokenBoxSettings.Properties.CaptionSettings.OptionalMark
    • TokenBoxSettings.Properties.CaptionSettings.RequiredMark

    Расширение всегда кодирует значение свойства TokenBoxSettings.Properties.NullText.

    Свойство TokenBoxSettings.EncodeHtml не действует для содержимого шаблона элемента. Вызовите метод HttpUtility.HtmlEncode, чтобы закодировать его.

    Трекбар

    Свойство TrackBarSettings.EncodeHtml кодирует следующие значения свойства TrackBarExtension:

    • Подсказка отдельных элементов
    • Текст отдельных позиций
    • TrackBarSettings.Properties.Caption
    • TrackBarSettings.Properties.CaptionSettings.OptionalMark
    • TrackBarSettings.Properties.CaptionSettings.RequiredMark

    Расширение всегда кодирует значение свойства TrackBarSettings.ToolTip.

    Список деревьев

    Задайте для свойства столбца PropertiesEdit.EncodeHtml значение true для кодирования значений ячеек столбца в TreeListExtension.

    Свойство TreeListSettings.SettingsBehavior.EncodeErrorHtml кодирует тексты ошибок расширения.

    Вид дерева

    Свойство TreeViewSettings.EncodeHtml кодирует текст отдельных узлов в TreeViewExtension.

    ValidationSummary

    Свойство ValidationSummarySettings.EncodeHtml кодирует значение свойства ValidationSummaryExtension ValidationSummarySettings.HeaderText.

    Расширение суммирует ошибки проверки из нескольких редакторов и отображает их в одном блоке. Установите для свойства EncodeHtml редактора значение true для кодирования текста ошибки редактора в ValidationSummaryExtension.

    Вертикальная сетка

    Задайте для свойства строки PropertiesEdit.EncodeHtml значение true , чтобы закодировать значения ячейки строки в VerticalGridExtension.

    Свойство VerticalGridSettings.SettingsBehavior.EncodeErrorHtml кодирует тексты ошибок расширения.

    Поддерживаемые кодировки

    java. io.InputStreamReader , java.io.OutputStreamWriter , классов java.lang.String и классов в Пакет java.nio.charset может конвертировать между Unicode и ряд других кодировок символов. Поддерживаемые кодировки различаются между различными реализациями Java SE 8. Описание класса для java.nio.charset.Charset перечисляет кодировки, которые должна поддерживать любая реализация Java SE 8.

    JDK 8 для всех платформ (Solaris, Linux и Microsoft Windows) и JRE 8 для Solaris и Linux. поддерживают все кодировки, показанные на этой странице. JRE 8 для Microsoft Windows может быть устанавливается как полная международная версия или как европейская языковая версия. По умолчанию программа установки JRE 8 устанавливает Версия для европейских языков, если она распознает, что хост работает система поддерживает только европейские языки. Если установщик признает, что необходим любой другой язык, или если пользователь запрашивает поддержку неевропейских языков в индивидуальном установка, установлена ​​полная международная версия. Версия для европейских языков поддерживает только кодировки, показанные на следующую таблицу основных наборов кодировок. Международная версия (включая файл lib/charsets.jar) поддерживает все кодировки, показанные на этой странице.

    В следующих таблицах показаны наборы кодировок, поддерживаемые Java SE. 8. Канонические имена, используемые новыми API java.nio . во многих случаях не совпадают с теми, которые используются в java.io и java.lang API.

    евро
    Каноническое имя для java.nio API Каноническое имя для API java.io и API java.lang Псевдоним или псевдонимы Описание
    ЦЭСУ-8 CESU8 CESU8 csCESU-8 Юникод CESU-8
    IBM00858 СР858 cp858 858 ПК-многоязычный-850+евро cp00858 ccsid00858 Вариант Cp850 с символом евро
    IBM437 CP437 ibm437 437 ibm-437 cspc8codepage437 cp437 windows-437 MS-DOS США, Австралия, Новая Зеландия, Южная Африка
    IBM775 CP775 ibm-775 ibm775 775 cp775 ПК Балтика
    IBM850 СР850 cp850 cspc850многоязычный ibm850 850 ibm-850 MS-DOS Latin-1
    IBM852 СР852 csPCp852 ibm-852 ibm852 852 cp852 Латинская версия MS-DOS-2
    IBM855 СР855 ibm855 855 ibm-855 cp855 cspcp855 Кириллица IBM
    IBM857 СР857 ibm857 857 cp857 csIBM857 ibm-857 IBM Турецкий
    IBM862 СР862 csIBM862 cp862 ibm862 862 cspc862latinhebrew ibm-862 ПК Иврит
    IBM866 СР866 ibm866 866 ibm-866 csIBM866 cp866 MS-DOS Русский
    ИСО-8859-1 ИСО8859_1 819 ISO8859-1 l1 ISO_8859-1:1987 ISO_8859-1 8859_1 iso-ir-100 латинский1 cp819ISO8859_1 IBM819 ISO_8859_1 IBM-819 csISOLatin1 ISO-8859-1, латинский алфавит № 1
    ИСО-8859-2 ИСО8859_2 ISO8859-2 ibm912 l2 ISO_8859-2 8859_2 cp912 ISO_8859-2:1987 iso8859_2 iso-ir-101 latin2 912 csISOLatin2 ibm-912 Латинский алфавит № 2
    ИСО-8859-4 ИСО8859_4 8859_4 latin4 l4 cp914 ISO_8859-4:1988 ibm914 ISO_8859-4 iso-ir-110 iso8859_4 csISOLatin4 iso8859-4 914 ибм-914 Латинский алфавит № 4
    ИСО-8859-5 ИСО8859_5 ISO_8859-5:1988 csISOLatinCyrillic iso-ir-144 iso8859_5 cp915 8859_5 ibm-915 ISO_8859-5 ibm915 915 кириллица ISO8859-5 Латинский/кириллица
    ИСО-8859-7 ИСО8859_7 греческий 8859_7 греческий8 ibm813 ISO_8859-7 iso8859_7 ELOT_928 cp813 ISO_8859-7:1987 sun_eu_greek csISOLatinGreek iso-ir-126 813 iso8859-7 ECMA-118 IBM-813 Латинский/греческий алфавит (ISO-8859-7:2003)
    ИСО-8859-9 ИСО8859_9 ibm-920 ISO_8859-9 8859_9 ISO_8859-9:1989 ibm920 латинский5 l5 iso8859_9 cp920 920 iso-ir-148 ISO8859-9 csISOLatin5 Латинский алфавит № 5
    ИСО-8859-13 ИСО8859_13 iso_8859-13 ISO8859-13 iso8859_13 8859_13 Латинский алфавит № 7
    ИСО-8859-15 ИСО8859_15 ISO8859-15 LATIN0 ISO8859_15_FDIS ISO8859_15 cp923 8859_15 L9 ISO-8859-15 IBM923 csISOlatin9 ISO_8859-15 IBM-923 csISOlatin0 923 ЛАТИН9 Латинский алфавит № 9
    КОИ8-Р КОИ8_Р koi8_r koi8 cskoi8r КОИ8-Р, русский
    КОИ8-У КОИ8_У кои8_у КОИ8-У, Украинский
    US-ASCII ASCII-код ANSI_X3. 4-1968 cp367 csASCII iso-ir-6 ASCII iso_646.irv:1983 ANSI_X3.4-1986 ascii7 по умолчанию ISO_646.irv:1991 ISO646-US IBM367 646 us Американский стандартный код для обмена информацией
    UTF-8 UTF8 Юникод-1-1-utf-8 UTF8 Восьмибитный формат преобразования Unicode (или UCS)
    UTF-16 UTF-16 Юникод UTF_16 utf16 UnicodeBig Шестнадцатибитный формат преобразования Unicode (или UCS), порядок байтов определяется необязательным знаком порядка байтов
    УТФ-16ВЕ UnicodeBigUnmarked X-UTF-16BE UTF_16BE ISO-10646-UCS-2 UnicodeBigUnmarked Формат преобразования шестнадцатибитного Unicode (или UCS), обратный порядок байтов порядок байтов
    УТФ-16ЛЕ UnicodeLittleUnmarked UnicodeLittleUnmarked UTF_16LE X-UTF-16LE Шестнадцатибитный формат преобразования Unicode (или UCS), порядок байтов с прямым порядком байтов
    UTF-32 UTF_32 UTF_32 UTF32 32-битный формат преобразования Unicode (или UCS), порядок байтов определяется необязательным знаком порядка байтов
    УТФ-32ВЕ UTF_32BE X-UTF-32BE UTF_32BE 32-битный формат преобразования Unicode (или UCS), байт с обратным порядком байтов заказ
    УТФ-32ЛЕ UTF_32LE X-UTF-32LE UTF_32LE 32-битный формат преобразования Unicode (или UCS), обратный порядок байтов порядок байтов
    х-UTF-32BE-BOM UTF_32BE_BOM UTF_32BE_BOM UTF-32BE-BOM 32-битный формат преобразования Unicode (или UCS), байт с обратным порядком байтов порядок, с меткой порядка байтов
    х-UTF-32LE-BOM UTF_32LE_BOM UTF_32LE_BOM UTF-32LE-BOM32-битный формат преобразования Unicode (или UCS), обратный порядок байтов порядок байтов, с меткой порядка байтов
    окна-1250 CP1250 ср1250 сп5346 Windows Восточно-Европейский
    окна-1251 CP1251 cp5347 анси-1251 cp1251 Windows Кириллица
    окна-1252 CP1252 ср5348 сп1252 Windows Latin-1
    окна-1253 CP1253 ср1253 сп5349 Windows греческий
    окна-1254 CP1254 ср1254 сп5350 Windows Турецкий
    окна-1257 CP1257 ср1257 сп5353 Окна Балтика
    Нет в наличии ЮникодБольшой Нет в наличии Формат преобразования шестнадцатибитного Unicode (или UCS), обратный порядок байтов порядок байтов, с меткой порядка байтов
    х-IBM737 CP737 cp737 ibm737 737 ibm-737 ПК Греческий
    х-IBM874 СР874 ibm-874 ibm874 874 cp874 Тайский IBM
    х-UTF-16LE-BOM UnicodeLittle UnicodeLittle Шестнадцатибитный формат преобразования Unicode (или UCS), порядок байтов с прямым порядком байтов, с отметкой порядка байтов
    Каноническое имя для java. nio API Каноническое имя для API java.io и API java.lang Псевдоним или псевдонимы Описание
    Большой5 Большой5 csBig5 Big5, традиционный китайский
    Big5-HKSCS Big5_HKSCS big5-hkscs big5hk Big5_HKSCS big5hkscs Big5 с расширениями Hong Kong, традиционный китайский (включая редакцию 2001 г.)
    EUC-JP EUC_JP csEUCPkdFmtjapanese x-euc-jp eucjis Extended_UNIX_Code_Packed_Format_for_Japanese euc_jp eucjp x-eucjp JISX 0201, 0208 и 0212, кодировка EUC для японского языка
    ЕСК-КР EUC_KR ksc5601-1987 csEUCKR ksc5601_1987 ksc5601 5601 euc_kr ksc_5601 ks_c_5601-1987 KS C 5601, кодировка EUC, корейский
    ГБ18030ГБ18030 ГБ18030-2000 Упрощенный китайский, стандарт КНР
    ГБ2312 EUC_CN gb2312 euc-cn x-EUC-CN euccn EUC_CN gb2312-80 gb2312-1980 GB2312, кодировка EUC, упрощенный китайский
    ГБК ГБК CP936 окна-936 ГБК, упрощенный китайский
    IBM-тайский CP838 ibm-838 ibm838 838 cp838 IBM Таиланд расширил SBCS
    IBM01140 CP1140 cp1140 1140 cp01140 ebcdic-us-037+евро ccsid01140 Вариант Cp037 с символом евро
    IBM01141 CP1141 1141 cp1141 cp01141 ccsid01141 ebcdic-de-273+евро Вариант Cp273 с символом евро
    IBM01142 CP1142 1142 cp1142 cp01142 ccsid01142 ebcdic-но-277+евро ebcdic-dk-277+евро Вариант Cp277 с символом евро
    IBM01143 CP1143 1143 cp01143 ccsid01143 cp1143 ebcdic-fi-278+евро ebcdic-se-278+евро Вариант Cp278 с символом евро
    IBM01144 CP1144 cp01144 ccsid01144 ebcdic-it-280+евро cp1144 1144 Вариант Cp280 с символом евро
    IBM01145 CP1145 ccsid01145 ebcdic-es-284+евро 1145 cp1145 cp01145 Вариант Cp284 с символом евро
    IBM01146 CP1146 ebcdic-gb-285+евро 1146 cp1146 cp01146 ccsid01146 Вариант Cp285 с символом евро
    IBM01147 CP1147 cp1147 1147 cp01147 ccsid01147 ebcdic-fr-277+евро Вариант Cp297 с символом евро
    IBM01148 CP1148 cp1148 ebcdic-international-500+евро 1148 cp01148 ccsid01148 Вариант Cp500 с символом евро
    IBM01149 CP1149 ebcdic-s-871+евро 1149 cp1149 cp01149 ccsid01149 Вариант Cp871 с символом евро
    IBM037 CP037 cp037 ibm037 ibm-037 csIBM037 ebcdic-cp-us ebcdic-cp-ca ebcdic-cp-nl ebcdic-cp-wt 037 cpibm37 cs-ebcdic-cp-wt ibm-37 cs-ebcdic-cp-us cs-ebcdic-cp-ca cs-ebcdic-cp-nl США, Канада (двуязычный, французский), Нидерланды, Португалия, Бразилия, Австралия
    IBM1026 CP1026 cp1026 ibm-1026 1026 ibm1026 IBM Latin-5, Турция
    IBM1047 CP1047 ибм-1047 1047 cp1047 Набор символов Latin-1 для хостов EBCDIC
    IBM273 CP273 ibm-273 ibm273 273 cp273 IBM Австрия, Германия
    IBM277 CP277 ibm277 277 cp277 ibm-277 IBM Дания, Норвегия
    IBM278 CP278 cp278 278 ibm-278 ebcdic-cp-se csIBM278 ibm278 ebcdic-sv IBM Финляндия, Швеция
    IBM280 CP280 ИБМ280 280 КП280 ИБМ-280 IBM Италия
    IBM284 CP284 csIBM284 ibm-284 cpibm284 ibm284 284 cp284 IBM Каталан/Испания, Испанский Латинская Америка
    IBM285 CP285 csIBM285 cp285 ebcdic-gb ibm-285 cpibm285 ibm285 285 ebcdic-cp-gb IBM Великобритания, Ирландия
    IBM290 CP290 ibm290 290 cp290 EBCDIC-JP-кана csIBM290 ibm-290 Расширенный хост SBCS для японского языка IBM Katakana
    IBM297 CP297 297 csIBM297 cp297 ibm297 ibm-297 cpibm297 ebcdic-cp-fr IBM Франция
    IBM420 CP420 ibm420 420 cp420 csIBM420 ibm-420 ebcdic-cp-ar1 IBM арабский
    IBM424 CP424 ebcdic-cp-he csIBM424 ibm-424 ibm424 424 cp424 IBM Иврит
    IBM500 СР500 ibm-500 ibm500 500 ebcdic-cp-bh ebcdic-cp-ch csIBM500 cp500 EBCDIC 500V1
    IBM860 CP860 ibm860 860 cp860 csIBM860 ibm-860 MS-DOS Португальский
    IBM861 CP861 cp861 ibm861 861 ibm-861 cp-is csIBM861 Исландский MS-DOS
    IBM863 CP863 csIBM863 ibm-863 ibm863 863 cp863 MS-DOS Канада Французский
    IBM864 CP864 csIBM864 ibm-864 ibm864 864 cp864 ПК Арабский
    IBM865 CP865 ibm-865 csIBM865 cp865 ibm865 865 MS-DOS Nordic
    IBM868 CP868 ibm868 868 cp868 csIBM868 ibm-868 cp-ar MS-DOS Пакистан
    IBM869 CP869 cp869 ibm869 869 ibm-869 cp-gr csIBM869 IBM Современный греческий
    IBM870 CP870 870 cp870 csIBM870 ibm-870 ibm870 ebcdic-cp-roece ebcdic-cp-yu IBM Многоязычная латиница-2
    IBM871 CP871 ibm871 871 cp871 ebcdic-cp-is csIBM871 ibm-871 IBM Исландия
    IBM918 CP918 918 ibm-918 ebcdic-cp-ar2 cp918 IBM Пакистан (урду)
    ИСО-2022-CN ИСО2022КН csISO2022CN ISO2022CN GB2312 и CNS11643 в форме ISO 2022 CN, упрощенная и Традиционный китайский (только преобразование в Unicode)
    ИСО-2022-JP ИСО2022ДЖП csjisencoding iso2022jp jis_encoding jis csISO2022JP JIS X 0201, 0208, в форме ISO 2022, японский
    ИСО-2022-JP-2 ИСО2022ДЖП2 csISO2022JP2 iso2022jp2 JIS X 0201, 0208, 0212 в форме ISO 2022, японский
    ИСО-2022-КР ИСО2022КР csISO2022KR ISO2022KR ISO 2022 КР, корейский
    ИСО-8859-3 ИСО8859_3 ISO8859-3 ibm913 8859_3 l3 cp913 ISO_8859-3 iso8859_3 latin3 csISOLatin3 913 ISO_8859-3:1988 ibm-913 iso-ir-109 Латинский алфавит № 3
    ИСО-8859-6 ИСО8859_6 ASMO-708 8859_6 iso8859_6 ISO_8859-6 csISOLлатинскийарабский ibm1089 арабский язык ibm-1089 1089 ECMA-114 iso-ir-127 ISO_8859-6:1987 ISO8859-6 cp1089 Латинский/арабский алфавит
    ИСО-8859-8 ИСО8859_8 8859_8 ISO_8859-8 ISO_8859-8:1988 cp916 iso-ir-138 ISO8859-8 иврит iso8859_8 ibm-916 csISOLatinИврит 916 ibm916 Латинский/ивритский алфавит
    JIS_X0201 JIS_X0201 JIS0201 csHalfWidthKatakana X0201 JIS_X0201 ДЖИС Х 0201
    JIS_X0212-1990 JIS_X0212-1990 JIS0212 iso-ir-159 x0212 jis_x0212-1990 csISO159JISX02121990 JIS X 0212
    Shift_JIS СИДЖИС shift_jis x-sjis sjis shift-jis ms_kanji csShiftJIS Shift-JIS, японский
    ТИС-620 ТИС620 тис620 тис620. 2533 TIS620, тайский
    окна-1255 CP1255 ср1255 Windows Иврит
    окна-1256 CP1256 ср1256 Windows Арабский
    окна-1258 CP1258 ср1258 Windows вьетнамский
    окна-31j МС932 MS932 windows-932 csWindows31J Windows Японский
    x-Big5-Solaris Big5_Solaris Big5_Solaris Big5 с семью дополнительными сопоставлениями символов идеографии Hanzi для локали Solaris zh_TW.

    Добавить комментарий

    Ваш адрес email не будет опубликован. Обязательные поля помечены *