Pergunta

Eu tenho uma codificação de arquivo UTF-8 no Windows e, quando o uso no Windows, ele mostra a everithing corretamente, mas quando copio o arquivo no Linux, os caracteres Unicode são gibis. O arquivo é um arquivo de texto simples. Como posso fazer com que esse arquivo seja legível no Linux ou como posso copiá -lo corretamente?

desde já, obrigado

Foi útil?

Solução

Parece um problema de apache/php

Você está executando suas cordas através do método HTMLSPSpecialchars interno do PHP (ou similar)? Nesse caso, pode ser necessário mudar sua codificação para UTF8

Ao invés de htmlspecialchars($mytext), tente usar htmlspecialchars($mytext, ENT_COMPAT, 'UTF-8')


Observe o seguinte (minha resposta anterior) está incorreta, pois Michael Burr Notes, o UTF-8 não precisa ou usa o BOM.

Se for apenas o texto, há uma chance de perder a marca de pedidos de bytes (BOM), ou é codificada com uma BOM incorreta.

Se estiver incorreto, o leitor do Linux pode estar honrando, mas o seu leitor do Windows está ignorando. Tente reabrindo seu arquivo em algo como o bloco de notas ++ e reabastecer. O NotePad ++ tem várias opções no menu de formato sobre como salvar os arquivos UTF-8.

Outras dicas

Verifique se você transferiu o arquivo no modo binário. Experimente também o iconv.

O arquivo em si está bem. Outra coisa no tubo está estragando o texto antes de ser enviado para o navegador. Ecoar o texto em vários pontos do aplicativo para identificar qual operação está quebrando -o.

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