Описание тега utf
Формат преобразования Unicode (8/16/32/...), используемый для кодирования кодовых точек Unicode
unicode определяет абстрактные CodePoints и их взаимодействия. Он также определяет несколько кодировок для хранения и обмена этими CodePoints. Все они могут выражать все допустимые кодовые точки Unicode, хотя они имеют разный размер, совместимость, выразительность для недопустимых данных и характеристики эффективности.
- utf-8 (иногда люди пишут только UTF для этой кодировки), может кодировать все допустимые и недопустимые последовательности в других кодировках, а также является надмножеством ascii. Если нет убедительных ограничений совместимости, предпочтительнее эта кодировка.
- punycode Используется только для международных доменных имен. (историческими соперниками были УТФ-5 и УТФ-6)
- GB18030 - официальная китайская кодировка.
- UTF-EBCDIC должен выполнять роль utf-8 для системы Ebcdic, но никогда не прижился.
- utf-7 Эта кодировка была разработана для систем, которые не имеют 8-битной четкости, как старая электронная почта, но никогда не пользовались большой популярностью даже там.
Следующие кодировки имеют 3 варианта: обратный порядок байтов, обратный порядок байтов и обратный порядок байтов с прямым порядком байтов.
- utf-16 ( utf-16le) Ранние последователи, принявшие ucs2, когда люди думали, что 64k достаточно, перешли на эту кодировку. Помимо суррогатов-сирот, нельзя кодировать плохие последовательности utf-8 или utf-32 как utf-16. Кроме того, он редко бывает более компактным, чем utf-8, и при этом он не имеет фиксированной ширины (на самом деле даже utf-32).
- utf-32 (идентичен ucs4, также известному как современные ucs). Это 1 CodeUnit на кодировку CodePoint. Из-за объединения CodePoints, сводящего на нет это единственное сомнительное преимущество, и огромной потребности в хранилище, он редко используется даже для внутреннего представления.