Bonjour,
Je cree un XML a partir d'une feuille excel en VBA.
En voici un echantillon
Le fichier se cree bien, pas de souci de ce cote. Mais lorsque j'essaye de le parser dans mon application ou juste de le charger dans un document MSXML via
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9 Set fso = New Scripting.FileSystemObject Set tf2 = fso.CreateTextFile("c:\text.xml", true, true) tf.writeline ("<?xml version='1.0' encoding='UTF-8'?>") tf.writeline ("<myRoot>") tf.writeline ("<DataEntry>") tf.writeline ("<editor>c'est moi l'éditeur</editor>") tf.writeline ("</DataEntry>") tf.writeline ("</myRoot>") tf.Close
Dim xml As New MSXML2.DOMDocument
xml.Load ("c:\text.xml")
Cela ne fonctionne pas.
Apres de multiples tests, je me suis rendu compte que cela est du a la presence des caracteres speciaux é, ' .
Pour que le fichier soit exploitable, il faut "juste" que je l'ouvre dans un editeur XML genre XMLSpy ou oxygen et que je le sauve pour que tout soit dans le bon format ce qui n'est pas vraiment commode...
Par exemple, mon XML ressemblant a ca dans UltraEdit:
devient ceci dans UE apres avoir ete sauve dans XMLSpy:
Code xml : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6 <?xml version='1.0' encoding='UTF-8'?> <myRoot> <DataEntry> <editor>c'est moi l'éditeur</editor> </DataEntry> </myRoot>
Code xml : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6 <?xml version='1.0' encoding='UTF-8'?> <myRoot> <DataEntry> <editor>c'est moi l'éditeur</editor> </DataEntry> </myRoot>
Il semble que les caracteres dans le fichier XML fraichement cree meme si visuellement, cela semble correct, ne sont pas valides pour etre dans un XML...
Connaissez vous un moyen de faire par la programmation VBA que ce fichier texte que je cree soit dans le bon encodage pour pouvoir ensuite l'exploiter dans des parser XSL, le charger dans un objet XML?
Merci d'avance de votre aide, je commence a devenir fou..
Sylvain
Partager