Utilitaires
Scripts
Divers
Jeux
Rechercher
Quillevere.net
Paradigmes informatiques

Convertir des fichiers de l'Ansi vers l'UTF-8

07/01/2015
Pour différents besoins, notamment dans le cadre de normer des sites Internet vers l'UTF-8, il est nécessaire de passer d'un encodage ISO 8859-1 vers de l'UTF-8
Voici un script Python pour effectuer une conversion d'un ensemble de fichiers de l'ANSI vers l'UTF-8. Il peut évidemment fonctionner, en l'adaptant, vers d'autres types de conversions.
  • Il est possible d'utiliser l'éditeur Notepad++ et d'installer l'extension "Python Script" (à l'aide du Plugin Manager).
  • Créer le fichier ANSI_vers_UTF8.py et collez le code suivant :
    import os;
    import sys;
    import time;
    filePathSrc="G:\\Site Internet\\Mon site"
    for root, dirs, files in os.walk(filePathSrc):
        for fn in files:
            if fn[-4:] == '.php' or fn[-3:] == '.js' or fn[-4:] == '.htm' or fn[-5:] == '.html' or fn[-4:] == '.css' or fn[-4:] == '.txt':
                console.write('-> Ouverture ' + root + "\" + fn)
                notepad.open(root + "
    \" + fn)
    import sys;
    import time;
    filePathSrc="
    G:\\Site Internet\\Mon site"
    for root, dirs, files in os.walk(filePathSrc):
        for fn in files:
            if fn[-4:] == '.php' or fn[-3:] == '.js' or fn[-4:] == '.htm' or fn[-5:] == '.html' or fn[-4:] == '.css' or fn[-4:] == '.txt':
                console.write('-> Ouverture ' + root + "
    \" + fn)
                notepad.open(root + "
    \" + fn)
                encoding=str(notepad.getEncoding())
                if encoding != 'COOKIE':
                    # COOKIE : UTF without BOM
                    # ENC8BIT : ANSI
                    console.write(' -> Conversion UTF-8 depuis ' + encoding)
                    if notepad.runMenuCommand("
    Encodage", "Convertir en UTF-8 (sans BOM)")== True:
                        notepad.save()
                        console.write("
    -> OK")
                    else:
                        console.write("
    -> KO")
                else:
                    console.write("
    -> OK")
                notepad.close()

                encoding=str(notepad.getEncoding())
                if encoding != 'COOKIE':
                    # COOKIE : UTF without BOM
                    # ENC8BIT : ANSI
                    console.write(' -> Conversion UTF-8 depuis ' + encoding)
                    if notepad.runMenuCommand("
    Encodage", "Convertir en UTF-8 (sans BOM)")== True:
                        notepad.save()
                        console.write("
    -> OK")
                    else:
                        console.write("
    -> KO !!")
                else:
                    console.write("
    -> OK")
        notepad.close()
  • Remplacez la ligne avec la variable filePathSrc par le chemin des fichiers à convertir
  • Enregistrez le fichier dans le répertoire du logiciel plugins\Config\PythonScript\scripts
  • Sur Notepad++, pour exécuter le script, allez dans le menu Compléments/Python Script/Scripts et sélectionnez le fichier créé

Notepad++ va alors ouvrir les fichiers, les uns après les autres, du répertoire et des sous-répertoires et les convertir en UTF-8.
Dernière modification le 04/01/2019 - Quillevere.net

Commentaires

Aucune inscription n'est requise si vous souhaitez

Rechercher sur le site

fr en rss RSS info Informations