Texto distorcido na tela?
- Coloque seus dados em um arquivo de texto simples (usando o vim – você não quer BOMs em seus dados!)
- use o comando hexdump -C arquivo
- localize os caracteres estranhos e determine o byte (sequências)
- procure-os, por exemplo, aqui: tabela utf8 charset (alemão)
Um exemplo, o trema alemão ü (“ue”):
A codificação utf8 correta é (você veria c3 bc no hexdump):
U+00FC ü c3 bc LATIN SMALL LETTER U WITH DIA.
Uma sequência de caracteres UTF-8 válida que é exibida de forma idêntica, mas não é um “ü” (novamente, 75 cc 88 no hexdump):
U+0075 u 75 LATIN SMALL LETTER U
U+0308 ̈ cc 88 COMBINING DIAERESIS