Изменения

Перейти к: навигация, поиск

Представление символов, таблицы кодировок

992 байта убрано, 07:57, 25 октября 2011
Нет описания правки
Для определения формата представления Юникода в текстовом файле используется приём, по которому в начале текста записывается символ U+FEFF (неразрывный пробел с нулевой шириной), также именуемый меткой порядка байтов (англ. byte order mark, BOM). Этот способ позволяет различать UTF-16LE и UTF-16BE, поскольку символа U+FFFE не существует. Также он иногда применяется для обозначения формата UTF-8, хотя к этому формату и неприменимо понятие порядка байтов.
== Представление кодировки Byte order marks BOM в кодировке ==
{| class="wikitable"
|-
! Кодирование
! Представление (Шестнадцатеричная)
! Представление (Десятичная)
! Представление (ISO-8859-1)
|-
| UTF-8
| <code>EF BB BF</code>
| <code>239 187 191</code>
| <code></code>
|-
| UTF-16 (Big Endian|BE)
| <code>FE FF</code>
| <code>254 255</code>
| <code>þÿ</code>
|-
| UTF-16 (Little Endian|LE)
| <code>FF FE</code>
| <code>255 254</code>
| <code>ÿþ</code>
|-
| UTF-32 (BE)
| <code>00 00 FE FF</code>
| <code>0 0 254 255</code>
| <code>□□þÿ</code> (□ ASCII символ нуль)
|-
| UTF-32 (LE)
| <code>FF FE 00 00</code>
| <code>255 254 0 0</code>
| <code>ÿþ□□</code> (□ ASCII символ нуль)
|-
| UTF-7
| <code>2B 2F 76 38<br>2B 2F 76 39<br>2B 2F 76 2B<br>2B 2F 76 2F</code>
| <code>43 47 118 56<br>43 47 118 57<br>43 47 118 43<br>43 47 118 47</code>
| <code>+/v8<br>+/v9<br>+/v+<br>+/v/</code>
|-
| UTF-1
| <code>F7 64 4C</code>
| <code>247 100 76</code>
| <code>÷dL</code>
|-
| UTF-EBCDIC
| <code>DD 73 66 73</code>
| <code>221 115 102 115</code>
| <code>Ýsfs</code>
|-
| Standard Compression Scheme for Unicode|SCSU
| <code>0E FE FF</code>
| <code>14 254 255</code>
| <code>□þÿ</code> (□ ASCII "shift out" символ)
|-
| BOCU-1
| <code>FB EE 28
| <code>251 238 40</code>
| <code>ûî</code>
|-
| GB-18030
| <code>84 31 95 33</code>
| <code>132 49 149 51</code>
| <code>□1■3</code> (□ и ■ несопоставленные ISO-8859-1 символы)
|}
К сожалению, этот способ не позволяет надёжно различать UTF-16LE и UTF-32LE, поскольку символ U+0000 допускается Юникодом (хотя реальные тексты редко начинаются с него).
55
правок

Навигация