Comment modifier et enregistrer XML avec la classe XmlDocument dans le.NET Framework SDK

Traductions disponibles Traductions disponibles
Numéro d'article: 301233 - Voir les produits auxquels s'applique cet article
Ancien nº de publication de cet article : F301233
Cet article se réfère à la suivante.NET Framework équivalente Espace de noms de bibliothèque :
  • System.Xml
Agrandir tout | Réduire tout

Sommaire

Résumé

Cet exemple montre comment mettre à jour et enregistrer XML avec la Classe XmlDocument .

Configuration requise

La liste suivante met en évidence le matériel recommandé, logiciel, l'infrastructure réseau et service packs dont vous aurez besoin :
  • Microsoft Windows 2000 Professionnel, Windows 2000 Server, Windows 2000 Advanced Server ou Windows NT 4.0 Server
  • Microsoft Visual Studio.NET
Cet article suppose que vous êtes familiarisé avec les éléments suivants rubriques :
  • Terminologie XML
  • Création et lecture d'un fichier XML
  • Le Document Object Model (DOM)

Comment utiliser la classe XmlDocument pour enregistrer le XML

  1. Créer une nouvelle Application Console c# dans ou Visual Basic Visual Studio.NET.
  2. Assurez-vous que le projet référence l'espace de noms System.Xml .
  3. Utilisez l'instruction Imports sur l'espace de noms Xml afin que vous ne sont pas nécessaires pour qualifier des déclarations XmlTextReader ultérieurement dans votre code. Vous devez utiliser l'instruction Imports avant toute autre déclaration.
    Visual Basic.NET Code
    Imports System.Xml
    Code c#
    using System.Xml;
    
  4. Créez une nouvelle classe XmlDocument et utilisez la méthode Load pour charger.

    La classe XmlDocument représente le document XML et possède une méthode Load pour charger le document à partir d'un fichier, flux ou un XmlReader.

    Visual Basic.NET Code
    Dim myXmlDocument as XmlDocument = new XmlDocument()
    myXmlDocument.Load ("books.xml")
    
    Code c#
    XmlDocument myXmlDocument = new XmlDocument();
    myXmlDocument.Load ("books.xml");
    
    Notez que, bien que le fichier Books.xml est utilisé ici, vous pouvez créer votre propre fichier Books.xml. Un fichier exemple Books.xml est également inclus avec Visual Studio.NET et.NET Framework Software Development Kit (SDK).
  5. L'objet XmlNode fournit des méthodes et propriétés permettant de manipuler un n?ud. Utilisation l'objet XmlNode qui renvoie la propriété DocumentElement de XmlDocument pour manipuler un n?ud XML.
    Visual Basic.NET Code
    Dim node as XmlNode
    node = myXmlDocument.DocumentElement
    
    Code c#
    XmlNode node;
    node = myXmlDocument.DocumentElement;
    
  6. Parcourez les enfants de l'élément document, et rechercher tous les n?uds « prix ». Utiliser pour chaque construction avec la propriété ChildNodes de l'objet de n?ud en boucle pour rechercher tous les n?uds qui ont une propriété Name qui est égale à « prix ». Doublez le prix de la Carnet d'adresses.
    Visual Basic.NET Code
    Dim node2 As XmlNode 'Used for internal loop.
    Dim nodePriceText As XmlNode
    For Each node In node.ChildNodes
       'Find the price child node.
       For Each node2 In node.ChildNodes
          If node2.Name = "price" Then
             '                    nodePriceText = node2.InnerText
             Dim price As Decimal
             price = System.Decimal.Parse(node2.InnerText)
    
             ' Double the price.
             Dim newprice As String
             newprice = CType(price * 2, Decimal).ToString("#.00")
             Console.WriteLine("Old Price = " & node2.InnerText & Strings.Chr(9) & "New price = " & newprice)
             node2.InnerText = newprice
          End If
       Next
    Next
    
    Code c#
    foreach(XmlNode node1 in node.ChildNodes)
       foreach (XmlNode node2 in node1.ChildNodes)
          if (node2.Name == "price")
             {
                Decimal price = Decimal.Parse(node2.InnerText);
                // Increase all the book prices by 20%
                String newprice = ((Decimal)price*(new Decimal(1.20))).ToString("#.00");
                Console.WriteLine("Old Price = " + node2.InnerText + "\tNew price = " + newprice);
                node2.InnerText = newprice;
              }
    
  7. Utilisez la méthode Save de la classe XmlDocument pour enregistrer le XML modifié dans un nouveau fichier nommé InflatedPriceBooks.xml.

    Vous pouvez utiliser la méthode Save pour enregistrer les données XML pour les fichiers, des flux et XmlWriters.
    Visual Basic.NET Code
    myXmlDocument.Save("InflatedPriceBooks.xml")
    
    Code c#
    myXmlDocument.Save("InflatedPriceBooks.xml");
    
  8. Générez et exécutez votre projet.

Références

Pour plus d'informations, reportez-vous aux sites Web suivants :
XML dans.NET:.NET Framework XML Classes and c# Offer Simple, Scalable Data Manipulation

Document objet Model (Core) Level 1

Modèle DOM de base

Classe XmlDocument

Classe XmlNode

XML Document Object Model (DOM)

Propriétés

Numéro d'article: 301233 - Dernière mise à jour: mardi 12 juin 2012 - Version: 1.0
Les informations contenues dans cet article s'appliquent au(x) produit(s) suivant(s):
  • Microsoft .NET Framework 1.0
  • Microsoft .NET Framework 1.1
Mots-clés : 
kbhowtomaster kbmt KB301233 KbMtfr
Traduction automatique
IMPORTANT : Cet article est issu du système de traduction automatique mis au point par Microsoft (http://support.microsoft.com/gp/mtdetails). Un certain nombre d?articles obtenus par traduction automatique sont en effet mis à votre disposition en complément des articles traduits en langue française par des traducteurs professionnels. Cela vous permet d?avoir accès, dans votre propre langue, à l?ensemble des articles de la base de connaissances rédigés originellement en langue anglaise. Les articles traduits automatiquement ne sont pas toujours parfaits et peuvent comporter des erreurs de vocabulaire, de syntaxe ou de grammaire (probablement semblables aux erreurs que ferait une personne étrangère s?exprimant dans votre langue !). Néanmoins, mis à part ces imperfections, ces articles devraient suffire à vous orienter et à vous aider à résoudre votre problème. Microsoft s?efforce aussi continuellement de faire évoluer son système de traduction automatique.
La version anglaise de cet article est la suivante: 301233
L'INFORMATION CONTENUE DANS CE DOCUMENT EST FOURNIE PAR MICROSOFT SANS GARANTIE D'AUCUNE SORTE, EXPLICITE OU IMPLICITE. L'UTILISATEUR ASSUME LE RISQUE DE L'UTILISATION DU CONTENU DE CE DOCUMENT. CE DOCUMENT NE PEUT ETRE REVENDU OU CEDE EN ECHANGE D'UN QUELCONQUE PROFIT.

Envoyer des commentaires

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com