IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

VBScript Discussion :

Spécifier le format d'encodage d'un fichier de sortie


Sujet :

VBScript

  1. #1
    Membre confirmé
    Avatar de strat0
    Homme Profil pro
    Développeur Web
    Inscrit en
    Novembre 2003
    Messages
    288
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Novembre 2003
    Messages : 288
    Points : 598
    Points
    598
    Par défaut Spécifier le format d'encodage d'un fichier de sortie
    Bonjour,

    Mes compétences en VBScript sont pour l'instant très limité, et j'ai toutes les difficultés du monde à trouver comment spécifier que je souhaite qu'un fichier soit créé en étant encodé en UTF-8.

    Voilà le code (qu'on m'a fourni, mais je n'y comprends rien) :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    'Pour pouvoir créer un fichier texte
    sub CreerTexte(filePath, fileText)
        dim fileSystem, fileHandle
     
        set fileSystem = Createobject("Scripting.FileSystemObject")
     
        set fileHandle = fileSystem.createTextFile(filePath, true, 0)
     
        fileHandle.write fileText
        fileHandle.close
     
        set fileHandle = nothing
        set fileSystem = nothing
    end sub
     
    'Création du fichier XML final
    CreerTexte (Chemin & "pouetpouet.xml"), DocFinal
    Le fichier pouetpouet.xml est systématiquement codé en ANSI et j'ai besoin qu'il le soit en UTF-8.

    Merci beaucoup pour toute l'aide que vous pourrez m'apporter (je me doute que c'est tout bête mais les ressources concernant le VBScript sont rares).

  2. #2
    Rédacteur
    Avatar de omen999
    Profil pro
    Inscrit en
    Février 2006
    Messages
    1 296
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2006
    Messages : 1 296
    Points : 3 549
    Points
    3 549
    Par défaut
    bonjour,
    remplacer
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    set fileHandle = fileSystem.createTextFile(filePath, true, 0)
    par
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    set fileHandle = fileSystem.createTextFile(filePath, true, true)
    les ressources concernant le VBScript sont rares
    la doc indispensable de référence est dispo sur le net sous la forme d'un fichier dénommé scd56fr.exe
    donc rtfm
    nomen omen, nemo non omen - Consultez la FAQ VBScript et les cours et tutoriels VBScript
    le plus terrible lorsqu'une voiture renverse un piéton, c'est que ce sont les freins qui hurlent. (ramón)
    pas de questions techniques par mp

  3. #3
    Membre confirmé
    Avatar de strat0
    Homme Profil pro
    Développeur Web
    Inscrit en
    Novembre 2003
    Messages
    288
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Novembre 2003
    Messages : 288
    Points : 598
    Points
    598
    Par défaut
    Bien tenté mais le fichier est enregistré en Unicode, alors que moi j'ai besoin spécifiquement d'UTF-8.

    Et si j'en crois la doc que tu m'as conseillé je n'ai le choix qu'entre ASCII ou Unicode par le biais de "true" ou "false" dans CreateTextFile...

  4. #4
    Rédacteur
    Avatar de omen999
    Profil pro
    Inscrit en
    Février 2006
    Messages
    1 296
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2006
    Messages : 1 296
    Points : 3 549
    Points
    3 549
    Par défaut
    effectivement createfiletext sort de l'unicode et non pas son encodage utf-8.
    j'ai trouvé ici: http://www.codetoad.com/asp_utf8.asp
    un exemple d'encodage/décodage utf-8 en vbscript

    sinon la vraie solution de geek, c'est d'appeler la fonction WideCharToMultiByte du kernel32
    tu trouveras dans les contributions vb6 un exemple de script pour lire le presse-papiers qui utilise la fonction inverse MultiByteToWideChar
    nomen omen, nemo non omen - Consultez la FAQ VBScript et les cours et tutoriels VBScript
    le plus terrible lorsqu'une voiture renverse un piéton, c'est que ce sont les freins qui hurlent. (ramón)
    pas de questions techniques par mp

  5. #5
    Membre confirmé
    Avatar de strat0
    Homme Profil pro
    Développeur Web
    Inscrit en
    Novembre 2003
    Messages
    288
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Novembre 2003
    Messages : 288
    Points : 598
    Points
    598
    Par défaut
    En C# ça m'a pris deux lignes...

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    String Contenu = File.ReadAllText(monFichier, Encoding.Default);
    File.WriteAllText(monFichier, Contenu, Encoding.UTF8);

  6. #6
    Rédacteur
    Avatar de omen999
    Profil pro
    Inscrit en
    Février 2006
    Messages
    1 296
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2006
    Messages : 1 296
    Points : 3 549
    Points
    3 549
    Par défaut
    En C# ça m'a pris deux lignes...
    oui mais c'est tricher
    nomen omen, nemo non omen - Consultez la FAQ VBScript et les cours et tutoriels VBScript
    le plus terrible lorsqu'une voiture renverse un piéton, c'est que ce sont les freins qui hurlent. (ramón)
    pas de questions techniques par mp

Discussions similaires

  1. Réponses: 4
    Dernier message: 13/12/2006, 17h10
  2. Réponses: 7
    Dernier message: 18/08/2006, 08h09
  3. Réponses: 20
    Dernier message: 15/05/2006, 11h47
  4. Comment reconnaitre l'encodage d'un fichier à l'ouverture
    Par Kczav dans le forum Général Python
    Réponses: 3
    Dernier message: 03/01/2006, 08h32
  5. Formater l'affichage d'un fichier
    Par devdev2003 dans le forum Linux
    Réponses: 3
    Dernier message: 28/06/2005, 17h47

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo