begin process at 2012 05 27 04:26:17
  Trouver un code source :
 
dans
 
Accueil > 

Code

 > 

XML

 > AJOUTER UN NOEUD DANS UN FICHIER XML DÉJÀ EXISTANT

AJOUTER UN NOEUD DANS UN FICHIER XML DÉJÀ EXISTANT


 Information sur la source

Note :
8 / 10 - par 1 personne
8,00 / 10

  • 1

  • 2

  • 3

  • 4

  • 5

  • 6

  • 7

  • 8

  • 9

  • 10
Catégorie :XML Classé sous :XML, ajouter noeud, appendChild, createNode Niveau :Débutant Date de création :09/12/2008 Date de mise à jour :09/12/2008 15:59:00 Vu :6 757

Auteur : pkzip

Ecrire un message privé
Commentaire sur cette source (1)
Ajouter un commentaire et/ou une note

 Description

C'est peut être simple, mais j'ai cherché longtemps comme dirait l'autre...
Alors pour éviter à quelqu'un d'autre de galérer, voici un petit bout de code documenté

le fichier RSS est de ce type :
<?xml version="1.0" encoding="ISO-8859-1"?>
<?xml-stylesheet type="text/xsl" href="updates.xslt" ?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
    <channel>
        <title>Ici c'est le Titre du flux</title>
        <link>Ici l'hyperlien</link>
        <description>Ici la description</description>
        <language>fr</language>
        <managingEditor>monmail@maboite.fr (Nom de la Boite)</managingEditor>
        <webMaster>monmail@maboite.fr (Mon nom)</webMaster>
        <ttl>60</ttl>


     <item>
<title>le titre du noeud</title>
<guid>son ID</guid>
<link>son hyperlien</link>
<description>sa description</description>
     </item>

        <atom:link href=" ici l'adresse du flux " rel="self" type="application/rss+xml" />
    </channel>
</rss>

et le source est plus bas

Source

  • <%
  • ' Init du fichier XML
  • Set Objet_Document = Server.CreateObject("MSXML2.DOMDocument")
  • Objet_Document.async = False
  • Objet_Document.Load(Server.MapPath("fichier.xml"))
  • 'On cherche la première arborescence parente du noeud à insérer
  • set nodeNewItem = Objet_Document.selectSingleNode("//channel")
  • ' On construit l'arborescence
  • Set nodeNew = Objet_Document.createNode(1,"item","")
  • set nodeTitle = Objet_Document.createNode(1,"title","")
  • set nodeTitleText = Objet_Document.createTextNode("Ici on mets le titre")
  • nodeTitle.appendChild(nodeTitleText)
  • Set nodeGUID = Objet_Document.createNode(1,"guid","")
  • set nodeGUIDText = Objet_Document.createTextNode("Ici on mets l'ID")
  • nodeGUID.appendChild(nodeGUIDText)
  • Set nodeLink = Objet_Document.createNode(1,"link","")
  • Set nodeLinkText = Objet_Document.createTextNode("Ici on mets le Lien")
  • nodeLink.appendChild(nodeLinkText)
  • Set nodeDescription = Objet_Document.createNode(1,"description","")
  • set nodeDescriptionText = Objet_Document.createTextNode("Ixi on mets la description")
  • nodeDescription.appendChild(nodeDescriptionText)
  • nodeNew.appendChild(nodeTitle)
  • nodeNew.appendChild(nodeGUID)
  • nodeNew.appendChild(nodeLink)
  • nodeNew.appendChild(nodeDescription)
  • 'on se place sur la premier occurrences des noeuds identiques
  • set nodeFirstItem = Objet_Document.selectSingleNode("//item")
  • 'et on insère AVANT les autre noeud
  • set res = nodeNewItem.insertBefore(nodeNew,nodeFirstItem)
  • 'Ensuite on sauvegarde dans un fichier (moi j'ai été obligé de passé par un second fichier car il acceptait pas de s'auto-écraser mais ça doit s'optimiser)
  • Objet_Document.Save Server.MapPath("fichier2.xml")
  • 'On recharge le fichier qu'on vient d'enregistrer
  • Set Objet_Document = Server.CreateObject("MSXML2.DOMDocument")
  • Objet_Document.async = False
  • Objet_Document.Load(Server.MapPath("fichier2.xml"))
  • 'et on le sauvegarde dans le fichier initial
  • Objet_Document.Save Server.MapPath("fichier.xml")
  • 'et c'est fini
  • %>
<%
' Init du fichier XML
Set Objet_Document = Server.CreateObject("MSXML2.DOMDocument")
    Objet_Document.async = False
    Objet_Document.Load(Server.MapPath("fichier.xml"))


'On cherche la première arborescence parente du noeud à insérer
set nodeNewItem = Objet_Document.selectSingleNode("//channel")
      
' On construit l'arborescence
Set nodeNew = Objet_Document.createNode(1,"item","")
set nodeTitle = Objet_Document.createNode(1,"title","")
set nodeTitleText = Objet_Document.createTextNode("Ici on mets le titre")
    nodeTitle.appendChild(nodeTitleText)
Set nodeGUID = Objet_Document.createNode(1,"guid","")
set nodeGUIDText = Objet_Document.createTextNode("Ici on mets l'ID")
    nodeGUID.appendChild(nodeGUIDText)
Set nodeLink = Objet_Document.createNode(1,"link","")
Set nodeLinkText = Objet_Document.createTextNode("Ici on mets le Lien")
    nodeLink.appendChild(nodeLinkText)
Set nodeDescription = Objet_Document.createNode(1,"description","")
set nodeDescriptionText = Objet_Document.createTextNode("Ixi on mets la description")
    nodeDescription.appendChild(nodeDescriptionText)

    nodeNew.appendChild(nodeTitle)
    nodeNew.appendChild(nodeGUID)
    nodeNew.appendChild(nodeLink)
    nodeNew.appendChild(nodeDescription)

'on se place sur la premier occurrences des noeuds identiques
    set nodeFirstItem = Objet_Document.selectSingleNode("//item")
'et on insère AVANT les autre noeud
    set res = nodeNewItem.insertBefore(nodeNew,nodeFirstItem)


'Ensuite on sauvegarde dans un fichier (moi j'ai été obligé de passé par un second fichier car il acceptait pas de s'auto-écraser mais ça doit s'optimiser)
    Objet_Document.Save Server.MapPath("fichier2.xml")

'On recharge le fichier qu'on vient d'enregistrer
Set Objet_Document = Server.CreateObject("MSXML2.DOMDocument")
    Objet_Document.async = False
    Objet_Document.Load(Server.MapPath("fichier2.xml"))
'et on le sauvegarde dans le fichier initial
Objet_Document.Save Server.MapPath("fichier.xml")

'et c'est fini
%>

 Conclusion

c'est surement optimisable mais ça fonctionne


 Historique

09 décembre 2008 15:53:13 :
.
09 décembre 2008 15:56:24 :
faute dans le titre
09 décembre 2008 15:59:00 :
.

 Sources de la même categorie

BASE DE DONNÉ BDD VERS XML : CONVERSION D'UN RECORDSET VERS ... par pifou25
Source .NET (Dotnet) GÉNÉRATION D'UN XML À PARTIR D'UNE BDD ACCESS par fabienfs
Source avec Zip LECTEUR DE FLUX RSS OBJET par Yoyo2B
Source avec Zip Source .NET (Dotnet) TRANSFORMATION XSLT POUR OBTENIR DU CODE XTML VALIDE À INTÉG... par saizonou
Source avec Zip Source .NET (Dotnet) EXÉCUTER UN SCRIPT VB.NET LORS D’UNE TRANSFORMATION XSLT par tikrimi

 Sources en rapport avec celle ci

Source avec Zip Source avec une capture Source .NET (Dotnet) UN SEMBLANT DE MASTERPAGE POUR DES FICHIERS XSL par bizzard4
BASE DE DONNÉ BDD VERS XML : CONVERSION D'UN RECORDSET VERS ... par pifou25
CONVERSION D'UNE DATE/HEURE STANDARD VERS DATE/HEURE CONFORM... par processus
Source avec Zip Source avec une capture Source .NET (Dotnet) CRÉATION D'UN FICHIER EXCEL 2007 EN UTILISANT OPENXML EST XS... par tikrimi
Source avec Zip Source .NET (Dotnet) EXÉCUTER UN SCRIPT VB.NET LORS D'UNE TRANSFORMATION XSLT (V2... par tikrimi

Commentaires et avis

Commentaire de adam525 le 10/07/2009 00:34:23 8/10

Merci,

ce code m'a beaucoup aidé à avancer sur un problème.

 Ajouter un commentaire


Discussions en rapport avec ce code source dans le forum

Et L'Xml Bor............ [ par Mr mask ] Nixounet !!!!!!Y'a pas de rubrique XML pourtant l'asp & xml sont assez copains !!!Vala :)Ps: top aspfr ! Soucis avec du XML [ par Cyril ] Quelle balise n'est pas reconnue par le W3C ? &lt;AREA&gt; &lt;COL&gt; &lt;KDB&gt; &lt;LEGEND&gt; MSXML3 ... qui a une doc ??? [ par jimmy ] je dois utiliser le parseur MSXML3 pour créer un fichier xml à partir d'une base de données et pour extraire des données d'un fichier xml ... comment ASP et XML [ par eihpos ] Comment faire pour récupérer des valeurs d'un fichier XML à partir d'une page ASP ?Merci de votre aide génération HTML d'après XML [ par chris53 ] Je dois générer doit marcher pour tous les navigateurs... Les données sont présentes dans un fichier XML.Je souhaite donc générer le document HTML côt Problème sur la traduction de booléens [ par tchuss ] Bonjour à tous.J'utilise via asp un objet VB. Certaines des méthodes qui lui sont associées sont là pour générer des documents XML à partir de ce qu'o aller chercher un fichier .xml ?? [ par stephe12 ] Bonjour à tous. Je n'arrive pas à aller chercher un fichier .xml qui est sur un site internet pour le copier sur une page de mon site. Le tout est en Parser un fichier XML sur un serveur distant [ par Skyride ] Bonsoir à tousQuelqu'un pourrait t'il me renseigner sur un point particulier...Voila je vous expose mon problème, un fichier de données XML est stocké xml et images [ par fraud ] farfadetbonjourje cherche comment on crée un lien à partir d'un fichier xml vers un fichier image.jpg pour faire apparaitre l'image dans une animation Modifier des fichiers xml [ par Franckyom50 ] Salut !Voilà, j'ai actuellement un petit gros problème : J'aimerais savoir comment faire pour pouvoir modifier ou rajouter des attributs ou meme d


Nos sponsors


Sondage...

CalendriCode

Mai 2012
LMMJVSD
 123456
78910111213
14151617181920
21222324252627
28293031   

Consulter la suite du CalendriCode

A découvrir



 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 2,839 sec (4)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales