Quel est l'outil ou la méthode la plus rapide et la plus simple pour convertir des fichiers texte entre des jeux de caractères?
Plus précisément, je dois convertir UTF-8 en ISO-8859-15 et vice versa.
Tout y passe: des lignes simples dans votre langage de script préféré, des outils en ligne de commande ou d'autres utilitaires pour OS, sites Web, etc.
Les meilleures solutions à ce jour:
Sous Linux / UNIX / OS X / cygwin:
L' icône Gnu suggérée par Troels Arvin est mieux utilisée comme filtre . Il semble être universellement disponible. Exemple:
$ iconv -f UTF-8 -t ISO-8859-15 in.txt > out.txt
Comme l'a souligné Ben , il existe un convertisseur en ligne utilisant iconv .
Gnu recode ( manuel ) proposé par Cheekysoft convertira un ou plusieurs fichiers sur place . Exemple:
$ recode UTF8..ISO-8859-15 in.txt
Celui-ci utilise des alias plus courts:
$ recode utf8..l9 in.txt
Recode prend également en charge les surfaces qui peuvent être utilisées pour convertir entre différents types de fin de ligne et encodages:
Convertir les sauts de ligne de LF (Unix) en CR-LF (DOS):
$ recode ../CR-LF in.txt
Fichier de codage Base64:
$ recode ../Base64 in.txt
Vous pouvez également les combiner.
Convertissez un fichier UTF8 encodé en Base64 avec des fins de ligne Unix en fichier Latin 1 encodé en Base64 avec des fins de ligne Dos:
$ recode utf8/Base64..l1/CR-LF/Base64 file.txt
Sous Windows avec Powershell ( Jay Bazuzi ):
PS C:\> gc -en utf8 in.txt | Out-File -en ascii out.txt
(Pas de prise en charge ISO-8859-15 cependant; il indique que les jeux de caractères pris en charge sont unicode, utf7, utf8, utf32, ascii, bigendianunicode, default et oem.)
Éditer
Voulez-vous dire support iso-8859-1? Utiliser "String" le fait par exemple pour l'inverse
gc -en string in.txt | Out-File -en utf8 out.txt
Remarque: Les valeurs d'énumération possibles sont "Inconnu, Chaîne, Unicode, Octet, BigEndianUnicode, UTF8, UTF7, Ascii".
- CsCvt - Le convertisseur de jeu de caractères de Kalytta est un autre excellent outil de conversion basé sur la ligne de commande pour Windows.
recode
agira également comme un filtre si vous ne lui transmettez aucun nom de fichier, par exemple:recode utf8..l9 < in.txt > out.txt
enca
, vous n'avez pas besoin de spécifier l'encodage d'entrée. Il suffit souvent juste pour préciser la langue: enca -L ru -x utf8 FILE.TXT
.
iconv -f UTF-32 -t UTF-8 input.csv > output.csv
n'a enregistré qu'environ sept cent mille lignes, seulement un tiers. L'utilisation de la version sur place a iconv -f UTF-32 -t UTF-8 file.csv
réussi à convertir les 2 millions de lignes et plus.
gc -en Ascii readme.html | Out-File -en UTF8 readme.html
mais il convertit le fichier en utf-8 mais alors c'est vide! Notepad ++ dit que le fichier est au format Ansi, mais si je comprends bien, ce n'est même pas un jeu de caractères valide ?? uk.answers.yahoo.com/question/index?qid=20100927014115AAiRExF