У меня есть куча файлов на арабском, английском и русском языках, закодированных в utf-8. Пытаясь обработать эти файлы с помощью сценария Perl, получаю такую ошибку:
Malformed UTF-8 character (fatal)
Проверяя содержимое этих файлов вручную, я обнаружил в них странные символы. Сейчас ищу способ автоматического удаления этих символов из файлов.
Есть ли способ это сделать?
Ответы:
Эта команда:
очистит ваш файл UTF-8, пропустив все недопустимые символы.
-f is the source format -t the target format -c skips any invalid sequence
источник
pbpaste | iconv -f utf-8 -t -utf-8 -c | pbcopy
. Я также создал рабочий процесс Альфреда с глобальным ярлыком для удаления всех специальных символов с помощью таргетингаascii
.iconv -f utf-8 -t ascii//TRANSLIT
решил мою проблему. Он преобразует фигурные кавычки в прямые.-o
для другого выходного файлаВаш метод должен читать побайтово, полностью понимать и ценить побайтовое построение символов. Самый простой способ - использовать редактор, который будет читать что угодно, но выводить только символы UTF-8. Текстовая панель - один из вариантов.
источник
сделаю свою работу.
источник