Pergunta

Antes que alguém recomenda que eu faço uma pesquisa no Google sobre isso, eu tenho. Eu só preciso de um pouco mais de clareza em torno do que páginas de códigos e codificações.

Se eu usar a codificação UTF-8, e usar uma página de código italiano e, em seguida, uma página de código francês, isso significa doente obter caracteres diferentes, embora os bytes havent mudou?

Foi útil?

Solução

Joel tem um resumo bom disto:
http://www.joelonsoftware.com/articles/Unicode.html

E nenhum. se eu entendi sua pergunta, isso não significa que. Quando você está convertendo UTF-8 para uma página de código específico, é possível que apenas alguns dos personagens vão ser convertido. O que acontece com aqueles que não são convertidos depende de como você chama a conversão. Um resultado possível é que os personagens que não poderiam ser mapeados para a página de código seria convertido para caracteres ponto de interrogação.

Outras dicas

Uma codificação é simplesmente um mapeamento entre os valores numéricos e "caracteres".

US-ASCII mapeia o número 65 para a letra A, 32 a um espaço e 49 para o dígito "1". (Como essas coisas são prestados é outro assunto.) Na verdade, UTF-8 faz o mesmo! Mas existem outros valores que trata de forma diferente para ASCII 8 UTF-. É uma codificação de comprimento variável, isto é, um carácter pode ser codificado com 1, 2, 3, ou 4 bytes; caracteres comuns, geralmente, consomem menos bytes.

Os arquivos de texto simples, incluindo páginas da web, são armazenados e transmitidos como seqüências de bytes. Estes bytes é suposto representar algo textual. aplicações de software (como editores de texto e navegadores) são responsáveis ??por rasgar as informações dentro desses arquivos na tela. Normalmente, eles fazem uso de biblioteca ou OS funções.

Se o software assume uma codificação diferente para o software que criou o arquivo, os caracteres errados pode ser exibido!

Note que é possível converter entre diferentes codificações; No entanto, se você converter para uma codificação que não contenha um determinado personagem, o software deve fazer uma escolha sobre o que usar em seu lugar. Esta conversão muitas vezes acontece de forma transparente (quando você salvar um arquivo com uma determinada codificação, o que você digitou deve ser transformado em que a codificação).

UTF-8 inclui todos os caracteres da sua página de código francês e italiano, mas não as páginas de código linguagem específicos não incluir todos uns dos outros personagens.

Assim, você pode pegar as informações de cada idioma e convertê-lo para UTF-8 para o armazenamento, mas você não pode ter certeza de que você vai obter os caracteres da direita se você tirar a entrada italiano e mostrá-lo como francês.

Use UTF-8 todo o caminho, se puder.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top