Символы теряются после преобразования из UTF-8 в ISO8859-1 и обратно в UTF-8

305
Volodymyr Bezuglyy

У меня есть файл со свойствами на французском языке.
Я хотел бы преобразовать его в ISO8859-1.
Но после преобразования некоторые символы теряются.
Что случилось?

> 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" 
0

1 ответ на вопрос

1
Michael Kohne

Этот символ присутствует в кодировке ISO8859-1? Я не верю, что это так. Что делает это ожидаемое поведение.

Для ясности: вывод iconv iconv -f UTF-8 -t ISO8859-1должен быть полностью в кодировке ISO8859-1. НЕТ НИЧЕГО в UTF-8. Итак, если во входном тексте есть символ, который не может быть представлен в ISO8859-1, то iconv удалит его.

Когда вы затем конвертируете обратно, iconv -f ISO8859-1 -t UTF-8команда не сможет узнать, что пропавший символ существует, поэтому вы не получите его на другом конце.

Похожие вопросы