it-swarm.dev

Diferenças entre utf8 e latin1

qual a diferença entre utf8 e latin1?

112
binbash

TF-8 está preparado para dominar o mundo, Latin1 não é.

Se você está tentando armazenar caracteres não latinos como chinês, japonês, hebraico, russo, etc usando a codificação Latin1, eles terminarão como mojibake . Você pode achar o texto introdutório de este artigo útil (e ainda mais se você souber um pouco de Java).

Note que o suporte UTF-8 completo de 4 bytes foi introduzido apenas no MySQL 5.5. Antes dessa versão, ela só chega a 3 bytes por caractere, não 4 bytes por caractere. Assim, suportava apenas o plano BMP e não, e. o avião Emoji. Se você quiser suporte UTF-8 completo de 4 bytes, atualize o MySQL para pelo menos 5.5 ou escolha outro RDBMS como o PostgreSQL. No MySQL 5.5+ é chamado utf8mb4 .

137
BalusC

Em latin1, cada caractere tem exatamente um byte de comprimento. Em utf8, um caractere pode consistir em mais de um byte. Consequentemente, utf8 tem mais caracteres do que latin1 (e os caracteres que eles têm em comum não são necessariamente representados pelo mesmo byte/bytesequence).

40
sepp2k