{{tag>Xenial système windows tutoriel}}
====== Comment résoudre les problèmes du type "Invalid Encoding" (codage non valide) ? ======
Le problème d'//invalid encoding// ou **(codage non valide)** dans Ubuntu est dû à l'utilisation par défaut de [[wpfr>UTF-8]] pour le codage des partitions.
Il peut arriver que dans certains cas le bon codage ne soit pas utilisé et des caractères bizarres s'affichent alors, par exemple : “�”. Cette page propose diverses solutions pour résoudre ce problème en fonction du cas de figure.
===== Partition windows =====
Comme expliqué sur la page d'installation des [[:tutoriel:comment_acceder_a_ses_partitions_windows|partitions windows]], il faut ajouter '',iocharset=utf8,codepage=850'' aux paramètres des partitions FAT32 qui peuveunt rencontrer ce problèmes.
En ntfs l'option est très souvent définie par défaut.
===== Partition Linux =====
Si vous avez une ancienne partition Linux qui n'utilisait pas UTF-8, utilisez l'outil **''convmv''** pour transformer les accents //invalides// en UTF-8. Il vous faudra peut-être également corriger des noms de fichiers écrits par Windows sur une partitions ext2 ou ext3.
Commencez par [[:tutoriel:comment_installer_un_paquet|installer les paquets]] **[[apt>convmv,dos2unix|convmv, dos2unix]]**.
Puis utilisez l'outil **convmv** avec les options désirées. Dans un [[:terminal]] saisissez : convmv -f iso-8859-15 -t utf8 -r --nosmart
puis avec l'option supplémentaire --notest
si vous voulez faire la conversion.
Par exemples :
* Fichier transféré d'une partition Windows sur une partition UTF-8 ext : convmv -f cp1252 -t utf-8 -r --notest
* Fichier extrait d'une archive: convmv -f iso-8859-1 -t utf-8 -r --notest
Pour faire une conversion récursive sur plusieurs fichiers :
convmv -r -f windows-1252 -t UTF-8 .
Adapter le charset au vôtre (ici windows-1252, mais ça peut être ISO-8859-1 ou encore cp-850).
Éventuellement [[https://forum.ubuntu-fr.org/viewtopic.php?id=19806|cette discussion]] du forum ubuntu-FR parle des problèmes de nom lors de téléchargement de fichiers.
===== Lecteur de cdroms =====
Si vos fichiers affichés sur des cdroms apparaissent avec un problème de type //invalid encoding//, alors il faudra modifier les paramètres du fichier [[:mount_fstab#le_fichier_fstab|/etc/fstab]] et ajouter //UTF8// en option de lecture des lecteurs, ce qui peut donner par exemple:
/dev/hdc /media/cdrom0 udf,iso9660 unhide,ro,user,noauto,utf8 0 0
/dev/hdd /media/cdrom1 udf,iso9660 unhide,ro,user,noauto,utf8 0 0
Normalement, après redémarrage de l'ordinateur, il ne devrait plus y avoir de problèmes de type //invalid_encoding// avec les cdroms.
===== Montage d'images ISO =====
Pour ceux qui montent des images ISO avec la commande mount, voici la commande qui pourra vous aider :
sudo mount -o loop,iocharset=utf8 -t iso9660 imagesource.iso /destination
===== Résultat d'un travail avec Scalpel =====
Le logiciel de récupération de fichiers **[[apt>Scalpel]]** peut parfois donner un résultat sous la forme de "fichiers" dont le titre ressemble à peu près à ça : ?-0-0 (codage non valide)
Il s'agit en réalité de dossiers qui ne sont utilisables en tant que tel que par le [[:sudo|super-utilisateur]]. Il vous faut donc modifier les [[:droits]] sur vos fichiers.
===== Voir aussi =====
[[https://wiki.ubuntu.com/UTFEightMigrationTool|Outil de migration en UTF8]]