Inserer un commentaire dans un fichier XML

zoglub14 Messages postés 62 Date d'inscription mardi 25 mars 2003 Statut Membre Dernière intervention 16 octobre 2007 - 27 juin 2006 à 14:04
Renfield Messages postés 17287 Date d'inscription mercredi 2 janvier 2002 Statut Modérateur Dernière intervention 27 septembre 2021 - 6 juil. 2006 à 12:52
Bonjour à toutes & tous,

Je cherche à inserer un commentaire dans un fichier XML que je crée mais je n'y arrive pas !
Voila le fichier XML :

[file:///C:/Documents%20and%20Settings/datser17/Bureau/test.xml# -]<test DATE= " 27/06/2006 13:54 ">
JE VOUDRAIS MON COMMENTAIRE ICI !!!!

-<FICHIER NOM ="Test Nom">

 <VERSION>Test Version</VERSION>

 <CHEMIN_RESEAU>test rep</CHEMIN_RESEAU>

 </FICHIER>

 </test>

Et voici mon code :

Sub test()

'On définit xml : c'est lui qui contiendra le document final xml
Dim Xml As New MSXML2.DOMDocument40
'xdoc est l'élément principal : ici le fichier
Dim Xdoc As IXMLDOMElement
 'les différentes "entrées"
Dim Xheader As IXMLDOMElement, Xconfig As IXMLDOMElement, Xtemp As IXMLDOMElement

'Call Etat_Mlp
'On crée l'élément principal différent pour chaque fichier = en-tête
Set Xdoc = Xml.createElement("test") 'Noeuds)

'On modifie ses attributs : contenus dans la balise
' Petit coup de date pour la maintenace
Dim Comment As IXMLDOMComment

Set Comment = Xml.createComment("This is a comment.")
Dim Aa As IXMLDOMElement

Xdoc.setAttribute "DATE", Format(Now, "dd/mm/yyyy hh:mm")

Set Xtemp = Xml.createElement("FICHIER") ' Creation du premier parent
Xtemp.setAttribute "NOM", "Test Nom"
  
Set Xconfig = Xtemp
Xdoc.appendChild Xtemp 'Et hop, xtemp est un fils de FICHIER

Set Xtemp = Xml.createElement("VERSION")
Xtemp.Text = "Test Version"
Xconfig.appendChild Xtemp 'Sous branche de Fichier

Set Xtemp = Xml.createElement("CHEMIN_RESEAU")
Xtemp.Text = "test rep"
Xconfig.appendChild Xtemp

'Puis on définit l'élément principal de xml comme étant xdoc
Set Xml.documentElement = Xdoc
'Et on enregistre le tout dans un fichier
Xml.save "C:\\Documents and Settings\\Datser17\\Bureau\\test.xml"

End Sub

Comment faire ?

Merci d'avance de votre aide

Zoglub

2 réponses

VBGenesis Messages postés 292 Date d'inscription samedi 25 février 2006 Statut Membre Dernière intervention 22 février 2009
6 juil. 2006 à 12:36
Salut
Je n'ai pas trop regardé ton code car je ne connais pas MSXML mais tu peux toujour le faire en ouvrant le fichier puis en modifiant le contenu "à la main". Je ne sais pas si sa va marcher mais tu peux toujour essayer sa:

ContenuDuFichier est la variable qui va etre sockée dans le fichier
DebutFichier est la partie du fichier XML qui se situe avant le commentaire
FinDuFichier est la partie qui se situe du commentaire jusqu'à la fin
Commentaire est le contenu du commentaire ;-)

ContenuDuFichier = DebutFichier & vbcrlf & "<!--" & Commentaire & "-->" & vbcrlf & FinDuFichier

J'espere que sa va te convenir! ;-)

VBGenesis
0
Renfield Messages postés 17287 Date d'inscription mercredi 2 janvier 2002 Statut Modérateur Dernière intervention 27 septembre 2021 74
6 juil. 2006 à 12:52
tu as juste a faire AppendChild....

Set Comment = Xml.createComment("This is a comment.")
Xdoc.appendChild Comment

en passant, pas besoin de doubler les antislashes dans :
Xml.save "C:\\Documents and Settings\\Datser17\\Bureau\\test.xml"

Renfield
Admin CodeS-SourceS- MVP Visual Basic
0
Rejoignez-nous