Jump to content
Fórum Script Brasil
  • 0

Encoding


jader.marques
 Share

Question

1 answer to this question

Recommended Posts

  • 0

Boa tarde!

Não existe uma forma de se descobrir pois não há na string um identificador.

Um exemplo seria o ISO-8859-1 e o UTF-8. Uma string apenas com os caracteres normais (letras sem acentuação, números) seria exatamente igual em ambas codificações. Já se tivesse um caracter acentuado, por exemplo, teria uma diferença.

Assim, o máximo que daria para fazer é tentar consistir os dados para verificar se o formato bate com algum padrão.

Exemplo: no UTF-8, os caracteres especiais podem ter até 4 bytes. A codificação é a seguinte:

Até 0x007F (7 bits), o valor resultante não é alterado: será apenas 1 byte, 0xxxxxxx em binário

Depois, até 0x07FF (11 bits), serão dois bytes no formato: 110xxxxx e 10xxxxxx

Ou seja: em uma string UTF-8, quando o oitavo bit de qualquer byte estiver ligado, indica que é um caracter com mais de 7 bits e portanto deverá obedecer a regra acima.

Pode ser um pouco complicado de entender mas, em resumo: sem saber a codificação original, o máximo que podemos fazer é tentar descobrir a codificação, sem qualquer garantia de estarmos certos ou não...

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Answer this question...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

 Share



  • Forum Statistics

    • Total Topics
      150.9k
    • Total Posts
      648.8k
×
×
  • Create New...