Probleme d'ecriture d'un fichier xml UTF-8

cuzco38 Messages postés 11 Date d'inscription vendredi 20 janvier 2006 Statut Membre Dernière intervention 20 novembre 2008 - 27 mars 2008 à 09:40
cuzco38 Messages postés 11 Date d'inscription vendredi 20 janvier 2006 Statut Membre Dernière intervention 20 novembre 2008 - 27 mars 2008 à 14:03
Bonjour,

J'utilise l'objet MXXMLWriter40 pour créer un XML, après serialisation , j'utilise DOMDocument40 pour créer le fichier XML.
Malgrès la définition de l'encoding en UTF-8 via la propriete Mxxmlwriter.encoding = "UTF-8", j'ai toujours mon fichier XML encodé en UTF-16.
Avez vous la solution pour généré du XML UTF-8 ?

Merci d'avance de vos réponses.

2 réponses

Renfield Messages postés 17287 Date d'inscription mercredi 2 janvier 2002 Statut Modérateur Dernière intervention 27 septembre 2021 74
27 mars 2008 à 10:26
tu aurais un peu de code a nous donner ?
0
cuzco38 Messages postés 11 Date d'inscription vendredi 20 janvier 2006 Statut Membre Dernière intervention 20 novembre 2008
27 mars 2008 à 14:03
Voila le code:

'CREATION FICHIER XML


'Creation objet XML writer


Dim writer As MXXMLWriter40, content As IVBSAXContentHandler


Set writer = New MXXMLWriter


Set content = writer


Dim attribut As New SAXAttributes


'ecriture en tete xml


writer.omitXMLDeclaration = False


'ecriture avec tab et retour chariot


writer.indent = True


writer.standalone = False


'Creation en tete


content.startDocument


'pas d'attribut


attribut.Clear


'ecrire un attribut


'attribut.addAttribute "", "", "name", "", "value"


'creation balise


content.startElement "", "", "CONTENT", attribut


content.startElement "", "", "ID_EXTERNE", attribut


content.characters UTF8_Encode("id_externe")


.......Ecriture des balises..............





'pied xml


content.endDocument


'Serialise


writer.flush


writer.encoding = "UTF-8"


'Création fichier XML


Dim XML_dom As DOMDocument40


Set XML_dom = New DOMDocument40


XML_dom.validateOnParse = True


XML_dom.async = False


XML_dom.loadXML (writer.output)


'Return validation results in message to the user.


If XML_dom.parseError.errorCode <> 0 Then


MsgBox "erreur "


Else


XML_dom.save App.Path & "\test.xml"


End If


Set XML_dom = Nothing


Set content = Nothing


Set writer = Nothing


Set attribut = Nothing


 


 
0
Rejoignez-nous