Les fichiers XML (partie 1)

-=Partie 1=-
Création d?un schéma Xml
utilisation de la classe XmlDocument
Vu 8820  fois

 

Imports System.Xml

un  fichier Xml doit être écrit selon un schéma bien défini ,nous allons donc definir la structure de notre fichier suivant ce shéma :

NB : pour créer un fichier xml standard à la syndication de contenu au format rss, voir les référence en fin d'article

 [lstSite]                                                                                      (debut du flux rss)

      [SITE]

            [URL]http://www.peuw.net/index.xml[/URL]

            [NOM]peuw.net[/NOM]

      [/SITE]

      [SITE]

            [URL]http://www.poxx.net/index.xml[/URL]

            [NOM]poxx - Science Fair[/NOM]

      [/SITE]

[/lstSite]                                                                                          (fin du flux Rss)

Nous allons donc déclarer l?objet XmlDoc représentant notre document avec la classe XmlDocument.

?création d?une nouvelle instance du membre xmldocument

Dim XmlDoc As XmlDocument = New XmlDocument()

 

 

 

Nous allons tout d?abord créer et baliser un document vierge de part la propriété LoadXml (Cree un document suivant le code passé en paramètre) du XmlDocument .

´création du document
XmlDoc.LoadXml("[lstSite][/lstSite]")

Ensuite pour chacun des flux nous allons créer une balise [SITE][/SITE] qui contiendra , une balise [URL][/URL] et une balise [NOM][/NOM]

Chaque flux est représenté par un Élément (classe XmlElement), nous devons donc les déclarer

?a savoir :

Dim elemSite As XmlElement ?ElemSite pour le n?ud [SITE][/SITE]
Dim elemUrl As XmlElement ?ElemSite pour le n?ud [URL][/URL]
Dim elemNom As XmlElement ?ElemSite pour le n?ud [NOM][/NOM]

Pour créer nos balises regardons de plus prés les propriétés de la classe XmlElement qui nous seront utiles  à savoir :

  • .CreateElement : Pour crée un nouveau n?ud (une nouvelle balise)
  • .InnerText : Pour définir la valeur de la balise ( n?ud)
  • .AppendChild : pour ajouter le n?ud à notre document (à la fin de la liste des enfants de ce n?ud).

                                      Créeons d?abord notre balise [SITE][/SITE] qui est en fait le n?ud parent des balises [URL][/URL] et [NOM][/NOM] et le n?ud enfant de la balise [lstSite][/lstSite])

´creation de la balise [SITE][/SITE]
elemSite = XmlDoc.CreateElement("SITE")

                                     Créeons ensuite nos balises [URL][/URL] et [NOM][/NOM]

elemUrl = XmlDoc.CreateElement("URL")
elemNom = XmlDoc.CreateElement("NOM")

                                     Définissons les valeur de nos balises [URL][/URL] et [NOM][/NOM]

elemUrl.InnerText = " http://www.peuw.net/index.xml "
elemNom.InnerText = " peuw.net "

Il ne nous reste plus qu?a :

                                     ajouter les balises enfants à la balise parent,

elemSite.AppendChild(elemUrl)
elemSite.AppendChild(elemNom)

                                     ajouter la balise parent au document Xml

´on ajoute la balise parent au document
XmlDoc.DocumentElement.AppendChild(elemSite)

                                     Ecrire le schéma Xml

XmlDoc.Save(Application.StartupPath & "Newsite.XML")

Ce qui nous donne :

Dim elemSite As XmlElement
elemSite = XmlDoc.CreateElement("SITE")

´creation et definition de la balise url (enfant)
Dim elemUrl As XmlElement
elemUrl = XmlDoc.CreateElement("URL")
elemUrl.InnerText = " http://www.peuw.net/index.xml "

´creation et definition de la balise Nom (enfant)
Dim elemNom As XmlElement
elemNom = XmlDoc.CreateElement("NOM")
elemNom.InnerText = peuw.net

´ajout des 2 balise enfants a la balise parent
elemSite.AppendChild(elemUrl)
elemSite.AppendChild(elemNom)

´on ajoute la balise parent au document
XmlDoc.DocumentElement.AppendChild(elemSite)

?Ecriture du Xml
XmlDoc.Save(Application.StartupPath & "Newsite.XML")
MsgBox("Enregistrement réussi")


syndication de contenu

- JDNet Developpeur : Définition, fonctionnement et utilisation du format RSS.
- Mnot (En) : Guide technique du RSS à l'attention des webmasters.
- Opikanoba : Définition, historique, forme et contenu.
- WebReference (En) : Définition, syntaxe, syndication, aggrégation et avenir du format.
- Xml.com (En) : Définitions, utilisation et applications du RSS avec le Xml.

 

Publié le  02/02/2004
Auteur:  betatestvb
Cet article est lié au projet:  NewsRss

 

Commentaires

Pas de commentaires

Si vous souhaitez ajouter un commentaire vous devez être authentifié.

 

ASP MAGAZINE  ASP-PHP.NET  C²I  CodePPC  CodeS-SourceS  Dotnet-News.com  Tech Head Brothers 

Dotnet-Project.com© tous droits réservés
Webmaster Aleks. Ont collaboré à l'aboutissement de ce projet :
CodeS-SourceS.com, ASP-PHP.Net, DotNet-FR.org, C2i.fr, Newsletter ASP.NET.