Mémo : iconv, ou comment changer l'encodage de vos fichiers
Cet article a été publié par Benjamin
le 25-07-09 à 09:30 dans la catégorie Autres
Tags :
- Libre
- Memo
L'objectif premier de ce blog étant de conserver mes notes (voir onglet À propos), j'inaugure enfin cette partie Mémo. Elle y contiendra de très petits articles, ils sont là pour m'aider à me souvenir de la syntaxe de certaines commandes par exemple.
Pour ce premier article, voici la syntaxe de la commande iconv
qui permet de changer le type d'encodage d'un fichier.
Syntaxe
La syntaxe de cette commande est la suivante :
iconv -f oldcode -t newcode entree -o sortie
- oldcode : l'encodage du fichier d'origine
- newcode : l'encodage souhaité
- entree : le fichier d'origine
- sortie : le fichier souhaité
iconv -l
Exemple
J'ai un fichier index.html codé en iso-8859-1 que je souhaite transformer en utf-8.
Je fais d'abord une copie de ce fichier : cp index.html index.iso
Puis je le transforme : iconv -f ISO-8859-1 -t UTF-8 index.iso -o index.html
Voila votre nouveau fichier codé en UTF-8 (vous pouvez supprimer la copie)
Commentaires
Ce type d'outil m'est extrêmement utile, notamment pour les fichiers HTML. Attention cependant le fichier ainsi converti doit être ouvert pour modifier l'attribut charset :
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1" /> en charset="UTF-8". La commande recode bien que plus complexe est également très intéressante pour convertir des fichiers HTML (encodage/décodage des entités par exemple).
Merci Benjamin pour cette commande très utile !
C'est pas mal comme commande!
Par contre quand on veut transformer un fichier zip en iso, j'ai un soucis avec le zip.
Voilà ce que j'ai essayé et impossible de savoir ce qu'il faut mettre dérière le -f :
iconv -f zip -t ISO-8859-1 FKUR20090619.iso -o FKUR20090619.zip
@choub24 : Cette commande ne change que l'encodage d'un fichier texte, cela ne change pas le type de fichier :)
@Bruno : Je ne connaissais pas cette commande, merci.
Bonjour à tous !
Vous m'avez l'air vachement affûtés sur l'encodage.
Moi je suis un quinca qui voudrait ne "pas perdre le fil" et me consever "à la page".
Or voilà mon souci : je télécharge "de temps en temps" de la musique qui se trouve presque toujours en mp3.
Le problème c'est que mes appareils, un peu anciens, ne connaissent pas ce format (autoradio, chaîne Hi-Fi, ...)
Comment faire pour trouver un bon logiciel (et lequel) pour encoder au "format ancien" (je sais pas le nom).
Merci de la part d'un "Bleu"
Sammy
Bonjour Sammy !
En fait tu voudrais graver tes musiques en mp3 sur des CD et dans un format lisible par le lecteur cd de ton autoradio et de la chaîne ? Si c'est bien ça :
En cherchant sur framasoft on peut trouver des logiciels de gravure : http://www.framasoft.net/rubrique39...
Celui-ci est adapté pour windows : http://www.framasoft.net/article438... , tu peux le télécharger :)
En bas de cette page on peut voir un petit lien qui donne sur un tuto :
http://www.pcloisirs.eu/infra_recor...
Il y a même 2 petits tutos dans cette page, celui qui nous intéresse est le 2ème : Créez un Cd audio de vos morceaux préférés
On dirait que le logiciel convertit automatiquement les formats (mp3 ou autres) dans le format adéquat (il me semble que le format adéquat pour CD se termine par .cda)
J'espère que je ne t'ai pas dit de bêtises et que tu ne vas pas gacher un cd à cause de moi !
A ++ :)
Juste une question :
J'ai un export Mysql dont les données sont visiblement en UTF-8 alors que le document est au format ANSI.
Je vois çà avec Notepad++.
Si je lui indique d'encoder en UTF-8, le résultat est parfait.
Attention, j'indique bien "encoder" et non "convertir" ... il y a une nuance.
Question :
Comment effectuer cette opération en ligne de commande sous Linux ?
En gros, je ne veux pas convertir le document mais changer son encodage (entête je suppose) pour qu'il corresponde au format des données.
Un moyen très simple de modifier l'encodage d'un fichier, sous vi :
http://www.webstrat.fr/web-technolo...
Rapide succinct et bien référencé.
Merci du coup de main
bonjour,
j'essaie d'encoder des fichier de UTF-8 vers ISO88591 avec la commande suivante:
iconv --verbose -f UTF8 -t ISO88591 RDIRB.cob> RDIRB_converted.cob
mais en sortie, j'ai ceci pour un des fichiers:
> file RDIRB_converted.cob
RDIRB_converted.cob: Non-ISO extended-ASCII text
Comment y remédier ?
Merci de votre aide.