Bonjour à tous,

Je suis en train de bosser sur un prestashop (moteur / cms d' e-commerce).
Je viens faire toute les manips pour faire tourner ça correctement en UTF-8 (encodage coté serveur, et coté client).
Et je cherche un soft pour convertir par lot plein de fichier depuis de l'ansi (ou d'autres formats) vers de l'UTF8 (à la manière de la fonction de notepad++ "convertir en UTF-8 (sans BOM)").

J'ai trouvé quelques trucs (lignes de commandes) pour du linux mais je suis sous XP, du coup je ne trouve vraiment rien...

Connaissez vous un soft qui permette de convertir en utf-8 (sans BOM) par lot et non fichier par fichier ?
Modifié par Vonwa (28 Mar 2009 - 13:36)
Wahoo ! Une réponse qui me semble pas mal !

Merci Heyoan !

Voilà exactement le logiciel que je cherchait, on devrait rajouter ce petit soft en lien dans la trousse à outils d'Alsacréations.

Bon, je viens de faire un test, j'ai un petit soucis Smiley fache et vous pourrez peut-être m'éclairer.
Voilà mon processus de test :

1er point :
je charge un fichier test encoder en ANSI.
Je choisi de l'encoder en utf-8 sans écrire le BOM.
je lance la conversion, mais lorsque j'affiche le format de la page sous notepad++, l'encodage reste du ANSI.

2nd point :
je refais la même manip en partant bien d'un fichier ANSI, mais je demande à Kaboom d'écrire le BOM et là le fichier et reconnu comme de l'UTF-8 sous notepad++.

3ème point :
je fais la même manipulation que la première mais avec notepad++ uniquement :
ouverture du fichier, encodage en utf-8 sans BOM, sauvegarde, fermeture et réouverture du fichier sous notepad++ et là le fichier apparait comme de l'ANSI.

du coup je me demande plusieurs choses :
-Est ce que notepad++ à besoin du BOM dans un fichier utf-8 pour l'identifier en tant qu'UTF-8
-Si c'est le cas comment puis-je savoir quelle est réellement l'encodage de mon fichier (UTF-8 sans BOM ou ANSI).

Voilà pour le moment,
Je vais chercher plus d'info sur la toile, et faire quelque test sur un serveur pour voir si cela fonctionne déjà mieux...
Cependant, si vous avez une solution, ou une réponse, n'hésitez pas.
Je m'auto-répond :
Notepad++ à besoin du BOM pour distinguer un fichier UTF-8 d'un fichier ANSI.
Ce qui implique que Notepad++ ne fait pas la distinction entre de l'UTF-8 sans BOM et de l'ANSI

Je suis peut-être un peux catégorique sur ce coup là, et donc comme toujours, si vous avez plus d'info, n'hésitez pas...

Problème résolu.

ps : merci encore à vous Heyoan !
Bonjour,

En vrac:

- La trousse à outils d'Alsacréations.com contient uniquement des outils qui émanent des membres d'Alsacréations, et publiés exclusivement ici. Si on publiait tous les outils possibles (avec des descriptifs et des liens, pas en les hébergeant ici), on aurait quelques 200 éléments supplémentaires dans cette trousse à outils.

- L'ANSI n'est pas un encodage. Mon conseil, un peu extrême, serait de virer tout logiciel qui utilise ce nom imprécis et d'utiliser uniquement des logiciels qui savent de quoi ils parlent. (En l'occurrence, des logiciels qui utilisent les noms Windows-1252 ou CP-1252 et ISO-8859-1 ou Latin-1.)

- Si un fichier ne contient que des caractères ASCII, la conversion de Windows-1252 ou ISO-8859-1 vers UTF8 sans BOM ne va strictement rien changer aux données écrites sur le disque. En gros, un fichier en ASCII n'a pas besoin d'être converti en UTF-8 car les caractères de l'ASCII s'écrivent de la même manière (mêmes valeurs numériques) en ASCII, ISO-8859-1, UTF-8, et d'autres encore.

- Si tu ouvres un fichier ASCII (ou UTF-8 ne contenant que des caractères ASCII, ou ISO-8859-1 ne contenant que des caractères ASCII... il s'agira strictement des mêmes données dans tous ces cas) avec Notepad++, il est possible qu'il t'indique le fichier comme étant en "ANSI". Par là il veut dire qu'il reconnait le fichier comme étant en ISO-8859-1 ou en Windows-1252 (je ne sais plus ce que Notepad++ met derrière le nom "ANSI"), et si tu ajoutes des caractères non-ASCII dans ton fichier, ils les enregistrera avec l'encodage "ANSI" (quoi que ça signifie pour lui...), sauf si tu lui a demandé de basculer en UTF-8. Le choix de l'"ANSI" par défaut est peut-être configurable.

- Si ton fichier est réellement en UTF-8 et contient des caractères non-ASCII, Notepad++ devrait l'analyser comme étant en UTF-8, même en l'absence de BOM.

- Pour vérifier l'encodage réel d'un fichier, le plus simple est encore de le charger dans un navigateur web tel que Firefox, et de jouer sur les encodages (menu Affichage), voire avec la détection automatique de l'encodage, et de constater de visu l'encodage qui permet d'interpréter le fichier correctement.