У меня есть текстовый файл в Unix с двумя столбцами, который содержит строки на разных языках (китайский, корейский, японский, арабский, английский, французский, немецкий и т. Д.) В первом столбце.
Текущая кодировка файла:
> файл index.txt
index.txt: текст на английском языке с расширенной ASCII, не относящийся к ISO, со строкой LF, NEL
терминаторы
Мне сказали, что в этом файле есть подмножество записей (в столбце 1), которые используют кодировку не-ASCII, не-UTF8 и что я должен переключать данные в этом столбце предпочтительно в ASCII. Если это невозможно, до UTF8.
Например:
1. Как пользователь видит это: «Библиотека <C3>
Que».
2. Через vim
: «Библиотека».
3. Через меньшее: «Библиотека».
Я уже пробовал много преобразований и методов (в течение нескольких дней), но ни один из них не преобразовал его, как ожидалось.
например
Я попытался изменить кодировку на UTF8:
iconv -f CP1256 -t UTF-8 index.txt.2
770> файл index.txt.2
index.txt.2: UTF-8 Unicode Английский текст Но символы
кажется, поврежден в новом файле.
Но получил: 1. Через vim: «Библиотек». 2. Через менее: «Библиотек. Кв.».
Я проверяю, сколько строк не ASCii содержит этот файл, и получил выходной файл с сотнями строк в файле 'index.txt.non_ascii':
pcregrep --color = 'auto' -n "[\ x80- \ xFF]" index.txt> index.txt.non_ascii
Я также попытался написать короткий скрипт (на Perl), который считывает данные и сохраняет их как utf8, но строки снова повреждены.
Я буду очень признателен, если кто-нибудь поможет мне с этой проблемой.
Заранее спасибо!
Mike