Os símbolos são perdidos após a conversão de UTF-8 para ISO8859-1 e de volta para UTF-8

0

Eu tenho um arquivo com propriedades em francês.
Eu gostaria de convertê-lo para ISO8859-1.
Mas após a conversão, alguns símbolos são perdidos.
O que está errado?

> cat fr.properties
VAR2="élément n’a"
> cat fr.properties | iconv -f UTF-8 -t ISO8859-1 | iconv -f ISO8859-1 -t UTF-8
VAR2="élément na"
    
por Volodymyr Bezuglyy 27.02.2018 / 19:26

1 resposta

1

Esse caractere está presente na codificação ISO8859-1? Não acredito que seja. O que torna esse comportamento esperado.

Para ser claro: a saída do iconv no iconv -f UTF-8 -t ISO8859-1 deve estar completamente na codificação ISO8859-1. Não pode deixar QUALQUER COISA em UTF-8. Então, se há um caractere no texto de entrada que não pode ser representado na ISO8859-1, então o iconv o elimina.

Quando você converte de volta, não há como o comando iconv -f ISO8859-1 -t UTF-8 saber que o caractere ausente existia, então você não o obtém do outro lado.

    
por 27.02.2018 / 19:41