UTF-32
-
Основы UTF-32
- UTF-32 — это кодировка фиксированной длины для Юникода, использующая 32 бита на кодовую точку.
- Кодовые точки индексируются напрямую, что упрощает поиск N-й кодовой точки.
- UTF-32 может быть быстрее, чем кодировки переменной длины, для обработки целых чисел в коде.
-
Недостатки и ограничения
- UTF-32 занимает больше места, чем UTF-16 и UTF-8, из-за неиспользованных битов.
- Кодовые точки за пределами BMP редко используются, что делает их игнорируемыми при оценке размера.
- UTF-32 не соответствует ограничениям RFC 3629 и может представлять все кодовые значения Unicode.
-
История и использование
- UTF-32 была определена в ISO/IEC 10646 и ограничена RFC 3629.
- UTF-32 используется во внутренних API и для рендеринга текста, где данные представлены отдельными кодовыми точками или глифами.
- В Windows и Unix строки UTF-32 используются редко, а в Python до версии 3.2 строки могли быть скомпилированы для использования UTF-16.
-
Варианты и рекомендации
- Суррогатные половинки и парные суррогаты могут быть использованы для преобразования между кодировками.
- UTF-32 может использоваться для хранения ошибок UTF-8, но для этого нет стандарта.
-
Ссылки и стандарты
- Стандарт Unicode 5.0.0 и Приложение №19 к стандарту Unicode определяют UTF-32.
- Регистрация новых кодировок UTF-32 была объявлена в апреле 2002 года.
Полный текст статьи: