2012-03-07 44 views
5

Duplicar posible:
UTF8, UTF16, and UTF32¿Qué ventaja hay con el uso de UTF-8 sobre UTF-16?

Siempre estoy leyendo cosas que dicen escribir mi código fuente en UTF-8 y permanecer lejos de otras codificaciones, sino que también parece como UTF-16 es una versión mejorada de UTF-8. ¿Cuál es la diferencia entre ellos, y hay alguna ventaja para ambos?

+1

UTF-16 tiene *** todas las desventajas *** tanto de UTF-8 y de UTF-32 por igual, al mismo tiempo que disfruta de *** ninguna de las ventajas de cualquiera. *** Es lo peor de ambos mundos, y lo mejor de ninguno. Use UTF-8 para almacenamiento y transferencia; use UTF-32 para operaciones de memoria; y usa UTF-16 para nada. – tchrist

+2

"usa UTF-16 en vano" ... excepto cuando se interactúa con las API que lo requieren, como la API de Win32. –

Respuesta

5

Esto debería ayudar :)

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

Resumen:

  1. UTF-8 y UTF-16 son utilizados para la codificación de caracteres
  2. UTF-8 utiliza un byte como mínimo en la codificación de los caracteres, mientras que UTF-16 utiliza dos
  3. Un archivo codificado UTF-8 tiende a ser más pequeño que un archivo UTF-16 codificada
  4. UTF-8 es compatible con ASCII, mientras que UTF-16 no es compatible con ASCII
  5. UTF-8 está orientado a bytes, mientras que UTF-16 no es
  6. UTF-8 está mejor en la recuperación de errores en comparación con UTF-16
+0

7. Con la validación relajada, todos los UTF-16 inválidos posibles se pueden disparar de forma circular a través de UTF-8. Lo contrario no se sostiene. – Deduplicator

Cuestiones relacionadas