begin process at 2010 02 10 00:51:05
  Trouver un code source :
 
dans
 
Accueil > 

Code

 > 

.NET

 > PARCOURS D'UN DOCUMENT XML À L'AIDE DE DOM

PARCOURS D'UN DOCUMENT XML À L'AIDE DE DOM


 Information sur la source

Note :
4,75 / 10 - par 4 personnes
4,75 / 10

  • 1

  • 2

  • 3

  • 4

  • 5

  • 6

  • 7

  • 8

  • 9

  • 10
Catégorie :.NET Source .NET ( DotNet ) Classé sous :dom, xml Niveau :Débutant Date de création :27/05/2003 Date de mise à jour :27/05/2003 12:36:58 Vu :15 341

Auteur : celene

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

 Description

Mon code se contente d'afficher les noeuds d'un document XML. Le parcours se fait de manière récursive à l'aide de DOM. Il faut instancier le constructeur en lui passant le nom du fichier XML à parser.

Source

  • using System;
  • using System.Xml;
  • /// <summary>
  • /// Parsing à l'aide de DOM d'un document XML.
  • /// </summary>
  • public class LecteurXmlDOM{
  • //le fichier contenant le document XML
  • private string fichier;
  • /// <summary>
  • /// <param name="fichier">le nom du fichier XML à parser</param>
  • /// </summary>
  • public LecteurXmlDOM(string fichier){
  • this.fichier=fichier;
  • }
  • /// <summary>
  • /// Lecture de tous les noeuds du document XML de manière récursive.
  • /// </summary>
  • public void lire(){
  • XmlDocument doc=new XmlDocument();
  • doc.Load(fichier);
  • lireRecursif(doc.ChildNodes[1]);
  • }
  • /// <summary>
  • /// Lecture d'un noeud.
  • /// Appel récursif sur tous les fils du noeud.
  • /// <param name="noeud">le noeud</param>
  • /// </summary>
  • private void lireRecursif(XmlNode noeud){
  • //affichage du noeud courant
  • Console.WriteLine("----------------------------");
  • Console.WriteLine("Type du noeud="+noeud.Name);
  • Console.WriteLine("Nom de noeud="+noeud.Name);
  • Console.WriteLine("Contenu du noeud="+noeud.Value);
  • if (noeud.Attributes!=null)
  • foreach (XmlAttribute a in noeud.Attributes)
  • Console.WriteLine(" "+a.Name+"="+a.Value);
  • foreach (XmlNode n in noeud.ChildNodes)
  • lireRecursif(n);
  • }
  • /// <summary>
  • /// </summary>
  • static void Main(string[] args){
  • LecteurXmlDOM lecteurXmlDOM=new LecteurXmlDOM("actu0.xml");
  • lecteurXmlDOM.lire();
  • }
  • }
using System;
using System.Xml;

/// <summary>
/// Parsing à l'aide de DOM d'un document XML.
/// </summary>
public class LecteurXmlDOM{
  //le fichier contenant le document XML
  private string fichier;

  /// <summary>
  /// <param name="fichier">le nom du fichier XML à parser</param>
  /// </summary>
  public LecteurXmlDOM(string fichier){
    this.fichier=fichier;
  }

  /// <summary>
  /// Lecture de tous les noeuds du document XML de manière récursive.
  /// </summary>
  public void lire(){
    XmlDocument doc=new XmlDocument();
    doc.Load(fichier);
    lireRecursif(doc.ChildNodes[1]);
  }

  /// <summary>
  /// Lecture d'un noeud.
  /// Appel récursif sur tous les fils du noeud.
  /// <param name="noeud">le noeud</param>
  /// </summary>
  private void lireRecursif(XmlNode noeud){
    //affichage du noeud courant
    Console.WriteLine("----------------------------");
    Console.WriteLine("Type du noeud="+noeud.Name);
    Console.WriteLine("Nom de noeud="+noeud.Name);
    Console.WriteLine("Contenu du noeud="+noeud.Value);
    if (noeud.Attributes!=null)
      foreach (XmlAttribute a in noeud.Attributes)
        Console.WriteLine("  "+a.Name+"="+a.Value);
    foreach (XmlNode n in noeud.ChildNodes)
      lireRecursif(n);
  }

  /// <summary>
  /// </summary>
  static void Main(string[] args){
    LecteurXmlDOM lecteurXmlDOM=new LecteurXmlDOM("actu0.xml");
    lecteurXmlDOM.lire();
  }
}



 Sources du même auteur

Source avec Zip Source .NET (Dotnet) GESTIONNAIRE DE LAYOUT

 Sources de la même categorie

Source avec Zip CHAT SERVER-CLIENT par abderrahmenbilog
Source avec Zip Source avec une capture Source .NET (Dotnet) SIMULATION DE CONSOLE POUR WINDOWS MOBILE par originalcompo
Source avec Zip Source .NET (Dotnet) BASE DE DONNÉES EN XML par DanMor498
Source avec Zip Source avec une capture Source .NET (Dotnet) SIMPLECONV - APPLICATION DE CONVERSION MONÉTAIRE AVEC TAUX E... par Jeffrey_
Source avec Zip Source .NET (Dotnet) TRAITEUR D'IMAGE (MINI) par ycyril

 Sources en rapport avec celle ci

Source avec Zip Source avec une capture Source .NET (Dotnet) [.NET3.5] SYSTEM.IO.PIPES - UTILISATION D'UN CANAL NOMMÉ par Willi
Source .NET (Dotnet) LINQ TO XML & LA MANIPULATION DE DONNÉES EN XML AVEC UNE APP... par driver
Source avec Zip Source avec une capture Source .NET (Dotnet) TESTEUR DE REQUÊTES XPATH par nseveno
Source .NET (Dotnet) PARSER DE NODE XML ALTERNATIF par bubbathemaster
Source avec Zip Source avec une capture Source .NET (Dotnet) CS2GENLINQTOXML - XML + XPATH VISUALIZER + LINQ TO XML GENE... par romagny13

Commentaires et avis

Commentaire de HolyDev le 03/05/2005 14:29:18

Mon but était de recréer une arborescence dans un treeview par rapport à un fichier XML, je croyais galérer, en chier des bulles ! mais grace à toi j'ai fai ça easy love...
Merci bien

Commentaire de Atmaweapon le 22/08/2005 13:58:51

Pourquoi ne pas avoir utilisé XmlTextReader ou XmlNodeReader ?
... réinventer la roue, ca peut être bien parfois... mais c'est long ;)

Commentaire de yarkier le 06/02/2008 11:27:44

Bonjour,

J'ai utilisé ce code dans un xml, mais lors de la lecture, la variable noeuds.value me renvois une chaine vide j'aimerais savoir pourquoi mais surtout comment résoudre ce problème

Merci de bien me répondre au plus vite

 Ajouter un commentaire


Discussions en rapport avec ce code source dans le forum

XML, DOM [ par ratsimisampy ] Bonjour à tous je cherche à manipuler des donnÈes à partir de fichiers xml importer par mon appli. jusqu'a présent j'arrive tout juste à afficher d Différence entre XSL DOM ET LINQ [ par mimosa803 ] Bonjour,J'ai une question concernant l'utilisation des fichiers XML :Avant la sortie de LINQ TO XML on utilisait DOM pour parser le document XML (XMLD les regles de transformation de xml en sql3 [ par amouna23 ] bon soir à tous, je veux travailler sur le mapping d'un schéma xml en un sql3mais je veux connaitre les étapes à suivre pour faire ça, et sur tous les recuperer le chemin relativ d'un fichier a partir de son chemin absolu [ par babyboo1107 ] Bonjour,Voilà je sèche un peux j'aimerai connaitre le chemin relatif d'un fichier se trouvant dans l'arborescence de mon site je suis sous visual stud j'aimerai charger un fichier XML dans un datagridview dans lequel une des colonnes à un type datagridviewcombobox [ par blanding ] hello la communauté, Postulat : j'aimerai charger un fichier XML dans un datagridview dans lequel une des colonnes à un type datagridviewcombobox. 1°) Création d'une DTD pour valider fichier XML [ par damsdu64 ] Bonjour, Dans le cadre d'un projet je dois valider mon fichier XML existant avec une DTD mais après de nombreuses recherches je ne trouve pas d'endroi balise XML [ par dorras7 ] Bonjour,je veux savoir comment écrire un document XML qui accepte comme nom du balise le caractère ":"Exemple:&lt;NS1:connector&gt;&lt;/NS1:connector& Parcourir un fichier XML avec XPath [ par nounours21_6 ] Bonjour, J'ai un problème avec mon code pour parcourir un fichier XML. Voici mon code : [code] XPathDocument document = new XPathDocument("fichier.x XML vers Access [ par sveleg ] Bonjour. Je gère un entrepôt logistique pour des produits industriels variés. J'ai de bonnes notions en Access mais aucunes pour le language XML. J'ai


Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Février 2010
LMMJVSD
1234567
891011121314
15161718192021
22232425262728

Consulter la suite du CalendriCode

 
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 : 0,764 sec (4)

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