2012-06-27 14 views
8

Me da curiosidad saber que hay sistemas modernos que por defecto tienen algo diferente a UTF-8. He bloqueado a una persona durante un día entero en varias ubicaciones para que un sistema mysql pueda tener una codificación diferente. Muy frustrante.¿por qué no TODO lo predeterminado a UTF-8?

¿Hay alguna buena razón para no usar utf-8 como valor predeterminado (y el espacio de almacenamiento parece no ser una buena razón)? No intento ser discutidor, solo curioso.

THX

+4

Principalmente porque una gran cantidad de sistemas "modernos" no son realmente modernos (o al menos, han existido por un tiempo), y por lo tanto tienen que preocuparse por la compatibilidad con versiones anteriores. – Amber

+0

así que no estoy diciendo 'no soportar' otras codificaciones pero parece que si todo estuviera configurado en utf-8, se podrían evitar muchos dolores de cabeza. Me imagino el dolor de cambiar los valores predeterminados (como en el caso de mysql), pero sinceramente no lo entiendo. – timpone

+1

Cambiar los valores predeterminados es un * enorme * dolor. – Amber

Respuesta

-1

Algunas codificaciones tienen diferentes órdenes de bytes (Little y Big Endian)

+1

UTF8 estandariza el orden de bytes ... ¿Cómo funciona esta respuesta? ¿La pregunta? –

+0

Debido a que algunos sistemas pueden no utilizar el orden de bytes estándar. Es posible que deba utilizar una codificación diferente para admitir el orden de bytes de ese sistema. – cmastudios

+0

http://unicode.org/faq/utf_bom.html#bom5 wrt Lista de materiales en UTF-8: ".. UTF-8 puede contener una lista de materiales. Sin embargo, no hace ninguna diferencia en cuanto a la endianidad de la secuencia de bytes". Entonces, un argumento de lista de materiales puede ser válido para UTF-16, pero UTF-16 generalmente no es intercambiable con ASCII. –

6

Hubo un tiempo en que no había planes de Unicode o UTF-8, y la codificación dispares estaban en uso en todo el mundo.

No fue hasta 1988 cuando se publicó la propuesta Unicode inicial, con el objetivo de codificar todos los caracteres del mundo en una codificación común.

El primer lanzamiento en 1991 cubrió muchas representaciones de personajes, sin embargo, no fue sino hasta 2006 que se agregaron balinés, cuneiforme, N'Ko, Phags-pa y fenicio.

Hasta entonces, los fenicios y los demás no podían representar su idioma en UTF-8 molestando a muchos programadores que se preguntaban por qué todo no estaba simplemente incumpliendo con el UTF-8.

+0

1991 fue hace 21 años, y con el debido respeto a las culturas que usted nombró, dudo que sean (o hayan sido o serán en un futuro previsible) un mercado lo suficientemente grande para computadoras/software para bloquear el cambio a una forma más sensible (para el resto del mundo) predeterminado durante veinte años. Esa es una razón bastante débil. – delnan

+0

Llevar tiempo migrar, solo porque la primera versión de Unicode fue en 1991 no significa que se haya adoptado al instante, y todavía no se haya completado, razón por la cual todos todavía tenemos estos problemas de codificación. Una gran cantidad de datos existentes todavía está en codificaciones distintas de Unicode. – monkut

+0

Luego explique eso, en lugar de divagar sobre algo que apenas es relevante para la respuesta que aparentemente intentó dar. – delnan

Cuestiones relacionadas