UTF-16
-
Определение и использование UTF-16
- UTF-16 — это кодировка Unicode, использующая 16-битные символы для представления всех кодовых точек Unicode.
- Она была разработана для совместимости с ASCII и поддержки всех языков, включая восточноазиатские.
- UTF-16 использует два байта для кодирования символов вне BMP и один байт для остальных.
-
История и развитие
- UTF-16 была предложена в 1991 году и стандартизирована в 1993 году.
- Она стала популярной благодаря поддержке Microsoft Windows и других операционных систем.
- UTF-16BE и UTF-16LE являются вариантами с разным порядком следования байтов.
-
Сравнение с другими кодировками
- UTF-16 отличается от UCS-2, который является предшественником и использует 16-битные символы, но только для BMP.
- UTF-8 является более компактной кодировкой для восточноазиатских языков, но не для всех.
- UTF-16 не подходит для подсчета символов или измерения ширины строки.
-
Использование в различных системах
- UTF-16 широко используется в Windows, включая Windows 10, и в других операционных системах, таких как Symbian и Qt.
- В Python 3.3 и Java рекомендуется использовать UTF-8, но внутри систем по-прежнему используется UTF-16.
- JavaScript и Swift также поддерживают UTF-16.
-
Синтаксис и обработка символов
- Для представления символов вне BMP в разных языках используются разные синтаксисы, включая «\uXXXX» и «\x{1D11E}».
- Регулярные выражения в некоторых языках требуют нового синтаксиса для обработки символов вне BMP.
-
Рекомендации и внешние ссылки
- В статье приведены ссылки на технические заметки, часто задаваемые вопросы и документацию по строкам для более глубокого понимания UTF-16.
Полный текст статьи: