У меня есть почтовый файл, содержащий данные на португальском языке. Когда я пытаюсь распаковать файл

$ unzip abc.zip

Он создает файл "abc.csv", но когда я пытаюсь просмотреть данные, я получаю "?"вместо символов типа" а ". Мои настройки LANG на оболочке выглядят так:

$ locale
LANG=pt_BR.UTF-8
LC_CTYPE="pt_BR.UTF-8"
LC_NUMERIC="pt_BR.UTF-8"
LC_TIME="pt_BR.UTF-8"
LC_COLLATE="pt_BR.UTF-8"
LC_MONETARY="pt_BR.UTF-8"
LC_MESSAGES="pt_BR.UTF-8"
LC_PAPER="pt_BR.UTF-8"
LC_NAME="pt_BR.UTF-8"
LC_ADDRESS="pt_BR.UTF-8"
LC_TELEPHONE="pt_BR.UTF-8"
LC_MEASUREMENT="pt_BR.UTF-8"
LC_IDENTIFICATION="pt_BR.UTF-8"
LC_ALL=

Я буду признателен за любую помощь в этом.

1 ответ1

1

Скорее всего, вы можете обвинить ваш редактор, который не в состоянии понять ни формат ISO-8859-1, ни формат UTF-8. Команда iconv пригодится в таких ситуациях; попробуйте преобразовать файл csv в обе стороны (ISO-8859-1 -> UTF-8 и UTF-8 -> ISO-8859-1, так как я не знаю, какой из них является вашей исходной кодификацией), и проверьте, по крайней мере, один из этих вновь созданных файлов читается правильно после этого:

$ iconv -f UTF-8 -t ISO-8859-1 abc.csv > abc-latin1.csv

$ iconv -f ISO-8859-1 -t UTF-8 abc.csv > abc-utf8.csv

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .