Jump to content

ЦЭСУ-8

Схема кодирования совместимости для UTF-16: 8-бит ( CESU-8 ) — это вариант UTF-8 , описанный в Техническом отчете Unicode № 26. [1] Кодовая точка Unicode из базовой многоязычной плоскости (BMP), т. е. кодовая точка в диапазоне от U+0000 до U+FFFF, кодируется так же, как в UTF-8. Дополнительный символ Юникода, то есть кодовая точка в диапазоне от U+10000 до U+10FFFF, сначала представляется как суррогатная пара, как в UTF-16 , а затем каждая суррогатная кодовая точка кодируется в UTF-8. Таким образом, CESU-8 требуется шесть байтов (по 3 байта на суррогат) для каждого дополнительного символа Юникода, тогда как UTF-8 требуется только четыре. Хотя это и не указано в техническом отчете, непарные суррогаты также кодируются как 3 байта каждый, и CESU-8 точно такой же, как применение более старого преобразователя UCS-2 в UTF-8 для данных UTF-16.

Кодировка символов Unicode, отличных от BMP, позволяет 11101101 1010yyyy 10xxxxxx 11101101 1011xxxx 10xxxxxx (yyyy представляет собой пять верхних битов символа минус один). Значения байтов 0xF0–0xF4 не появятся в CESU-8, поскольку они запускают 4-байтовые кодировки, используемые UTF-8.

CESU-8 не является официальной частью стандарта Unicode, поскольку технические отчеты Unicode являются лишь информационными документами. [2] Его следует использовать исключительно для внутренней обработки и никогда для внешнего обмена данными.

Поддержка CESU-8 в HTML -документах запрещена W3C . [3] [4] и ЧТОРГ [5] HTML-стандарты, так как это может привести к уязвимости межсайтового скриптинга . [6]

Java Модифицированный код UTF-8 — это CESU-8 со специальной удлиненной кодировкой символа NUL (U+0000) в виде двухбайтовой последовательности. C0 80. [7]

База данных Oracle использует CESU-8 в качестве набора символов «UTF8». Стандартный UTF-8 можно получить, используя набор символов « AL32UTF8 » (начиная с версии Oracle 9.0).

Примеры [ править ]

Кодовая точка U + 0045 U + 0205 U+10400
Характер И ƒ 𐐀
UTF-8 45 С8 85 Ф0 90 90 80
UTF-16 0045 0205 Д801 DC00
ЦЭСУ-8 45 С8 85 ЭД А0 81 ЭД Б0 80

Ссылки [ править ]

  1. ^ Макгоуэн, Рик. «Технический отчет Unicode № 26 — Схема кодирования совместимости для UTF-16: 8-бит (CESU-8)» . Консорциум Юникод.
  2. ^ «О технических отчетах Unicode — Типы технических отчетов Unicode: UAX, UTS, UTR» . Консорциум Юникод.
  3. ^ «8.2.2.3. Кодировки символов» . Стандарт HTML 5.1 . W3C.
  4. ^ «8.2.2.3. Кодировки символов» . Стандарт HTML5 . W3C.
  5. ^ «12.2.3.3 Кодировки символов» . HTML Уровень жизни . ЧТОРГ.
  6. ^ «<мета> — HTML» . Веб-документы MDN . Мозилла.
  7. ^ «Документация Java SE для интерфейса java.io.DataInput, подраздел «Модифицированный UTF-8»» . Корпорация Оракл . 2015 . Проверено 30 апреля 2021 г.

Внешние ссылки [ править ]

Arc.Ask3.Ru: конец переведенного документа.
Arc.Ask3.Ru
Номер скриншота №: c2eb8c2110548ce0b0210ebd581836be__1650221220
URL1:https://arc.ask3.ru/arc/aa/c2/be/c2eb8c2110548ce0b0210ebd581836be.html
Заголовок, (Title) документа по адресу, URL1:
CESU-8 - Wikipedia
Данный printscreen веб страницы (снимок веб страницы, скриншот веб страницы), визуально-программная копия документа расположенного по адресу URL1 и сохраненная в файл, имеет: квалифицированную, усовершенствованную (подтверждены: метки времени, валидность сертификата), открепленную ЭЦП (приложена к данному файлу), что может быть использовано для подтверждения содержания и факта существования документа в этот момент времени. Права на данный скриншот принадлежат администрации Ask3.ru, использование в качестве доказательства только с письменного разрешения правообладателя скриншота. Администрация Ask3.ru не несет ответственности за информацию размещенную на данном скриншоте. Права на прочие зарегистрированные элементы любого права, изображенные на снимках принадлежат их владельцам. Качество перевода предоставляется как есть. Любые претензии, иски не могут быть предъявлены. Если вы не согласны с любым пунктом перечисленным выше, вы не можете использовать данный сайт и информация размещенную на нем (сайте/странице), немедленно покиньте данный сайт. В случае нарушения любого пункта перечисленного выше, штраф 55! (Пятьдесят пять факториал, Денежную единицу (имеющую самостоятельную стоимость) можете выбрать самостоятельно, выплаичвается товарами в течение 7 дней с момента нарушения.)