В чем преимущество использования UTF-8 перед UTF-16?

Возможный дубликат:
UTF8, UTF16 и UTF32

Я всегда читаю, что нужно писать исходный код в UTF-8 и держаться подальше от других кодировок, но также кажется, что UTF-16 - это улучшенная версия UTF-8. В чем разница между ними и есть ли у них преимущества?


person Orcris    schedule 07.03.2012    source источник
comment
UTF-16 имеет все недостатки как UTF-8, так и UTF-32, но при этом не обладает ни одним из преимуществ любого из них. < / i> Это худшее из обоих миров и ни одно из лучших. Используйте UTF-8 для хранения и передачи; использовать UTF-32 для операций с памятью; и использовать UTF-16 даром.   -  person tchrist    schedule 07.03.2012
comment
используйте UTF-16 ни для чего ... кроме случаев взаимодействия с API-интерфейсами, которые требуют этого, такими как Win32 API.   -  person Remy Lebeau    schedule 08.03.2012


Ответы (1)


Это должно помочь :)

http://www.differencebetween.net/technology/difference-between-utf-8-and-utf-16/

Резюме:

  1. UTF-8 и UTF-16 используются для кодирования символов.
  2. UTF-8 использует как минимум один байт для кодирования символов, тогда как UTF-16 использует два
  3. Файл в кодировке UTF-8 имеет тенденцию быть меньше, чем файл в кодировке UTF-16.
  4. UTF-8 совместим с ASCII, а UTF-16 несовместим с ASCII
  5. UTF-8 ориентирован на байты, а UTF-16 - нет.
  6. UTF-8 лучше восстанавливается после ошибок по сравнению с UTF-16
person Michael    schedule 07.03.2012
comment
7. При упрощенной проверке все возможные недопустимые UTF-16 могут быть обработаны с помощью UTF-8. Обратное не работает. - person Deduplicator; 04.03.2015