Какое самое быстрое и простое средство или способ преобразования текстовых файлов между наборами символов?
В частности, мне нужно конвертировать из UTF-8 в ISO-8859-15 и наоборот.
Все идет: однострочные шрифты на вашем любимом языке сценариев, средства командной строки или другие утилиты для ОС, веб-сайтов и т.д.
Лучшие решения:
В Linux/UNIX/OS X/cygwin:
-
Gnu iconv, предложенный Troels Arvin, лучше всего использовать как фильтр. Кажется, он универсален. Пример:
$ iconv -f UTF-8 -t ISO-8859-15 in.txt > out.txt
Как отметил Ben, есть онлайн-конвертер recode (руководство), предложенный Cheekysoft, преобразует один или несколько файлов на месте. Пример:
$ recode UTF8..ISO-8859-15 in.txt
В этом случае используются более короткие псевдонимы:
$ recode utf8..l9 in.txt
Recode также поддерживает поверхности, которые могут использоваться для преобразования между различными типами окончания строк и кодировками:
Преобразование строк из LF (Unix) в CR-LF (DOS):
$ recode ../CR-LF in.txt
Файл с кодировкой Base64:
$ recode ../Base64 in.txt
Вы также можете комбинировать их.
Преобразовать файл UTF8 с кодировкой Base64 с окончанием строки Unix в файл Latin Latin с кодировкой Base64 с окончанием строки Dos:
$ recode utf8/Base64..l1/CR-LF/Base64 file.txt
В Windows с Powershell (Джей Базузи):
-
PS C:\> gc -en utf8 in.txt | Out-File -en ascii out.txt
(Нет поддержки ISO-8859-15, в ней говорится, что поддерживаемые кодировки являются unicode, utf7, utf8, utf32, ascii, bigendianunicode, default и oem.)
Изменить
Вы имеете в виду поддержку iso-8859-1? Использование "String" делает это, например, для наоборот
gc -en string in.txt | Out-File -en utf8 out.txt
Примечание. Возможными значениями перечисления являются "Неизвестный, String, Unicode, Byte, BigEndianUnicode, UTF8, UTF7, Ascii".