IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

C# Discussion :

manipuler fichier XML


Sujet :

C#

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Inscrit en
    Septembre 2008
    Messages
    230
    Détails du profil
    Informations forums :
    Inscription : Septembre 2008
    Messages : 230
    Par défaut manipuler fichier XML
    Bonjour,

    voici mon fichier XML
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
    <?xml version="1.0" encoding="UTF-8"?>
    <TAUXTVA>
      <TVA label="France">19.6</TVA>
      <TVA label="Corse">8</TVA>
      <TVA label="Export">0</TVA>
    </TAUXTVA>
    et j'aimerais faire apparaitre la valeur du label suivant la valeur choisie (19.6)
    mais je ne vois pas comment faire .

    Merci de votre piste..

  2. #2
    Membre expérimenté
    Avatar de StormimOn
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Mai 2005
    Messages
    2 593
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 47
    Localisation : France, Sarthe (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mai 2005
    Messages : 2 593
    Par défaut
    Soit tu parcours le fichier (avec la classe XmlDocument par exemple) et quand tu trouves un élément avec la bonne valeur (la TVA) tu prends la valeur de l'attribut label.

    Soit tu utilises une requête XPath (utilisable avec XmlDocument et XPathDocument, si en lecture seule) pour récupérer l'attribut label de l'élément dont la TVA vaut la valeur recherchée.

    Un coup d'oeil sur les tutos de DVP et google devrait suffire après ça

  3. #3
    Membre Expert
    Avatar de azstar
    Homme Profil pro
    Architecte Technique BizTalk/.NET
    Inscrit en
    Juillet 2008
    Messages
    1 198
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Canada

    Informations professionnelles :
    Activité : Architecte Technique BizTalk/.NET
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juillet 2008
    Messages : 1 198
    Par défaut
    tu peut utlise linqtoxml c'est tres pratique et tres simple..

  4. #4
    Membre extrêmement actif

    Homme Profil pro
    Ingénieur R&D
    Inscrit en
    Juin 2003
    Messages
    4 506
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Ingénieur R&D
    Secteur : Industrie

    Informations forums :
    Inscription : Juin 2003
    Messages : 4 506
    Par défaut
    Sans hésiter avec LinqtoXml si tu es en framework 3.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
     
     
    XElement config = XElement.Parse (
    @"<?xml version='1.0' encoding='UTF-8'?>
    <TAUXTVA>
      <TVA label='France'>19.6</TVA>
      <TVA label='Corse'>8</TVA>
      <TVA label='Export'>0</TVA>
    </TAUXTVA>");
     
    string LabelRecherche= (from c in config.Elements("TVA")	
    		  where c.Value.Equals("19.6")
    		  select c.Attribute("label").Value).SingleOrDefault();
    S'il y en a plusieurs de possibles :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
     
     
    XElement config = XElement.Parse (
    @"<?xml version='1.0' encoding='UTF-8'?>
    <TAUXTVA>
      <TVA label='France'>19.6</TVA>
      <TVA label='Corse'>8</TVA>
      <TVA label='Italie'>19.6</TVA>
      <TVA label='Export'>0</TVA>
      <TVA label='Espagne'>19.6</TVA>
    </TAUXTVA>");
     
    IEnumerable<string> LabelsRecherches= from c in config.Elements("TVA")	
    		  where c.Value.Equals("19.6")
    		  select c.Attribute("label").Value;
     
    foreach(string label in LabelsRecherches)
      Console.WriteLine(label);

  5. #5
    Membre confirmé
    Inscrit en
    Septembre 2008
    Messages
    230
    Détails du profil
    Informations forums :
    Inscription : Septembre 2008
    Messages : 230
    Par défaut
    merci pour le code je vais tester tous ca !!

    stephanie

  6. #6
    Membre confirmé
    Inscrit en
    Septembre 2008
    Messages
    230
    Détails du profil
    Informations forums :
    Inscription : Septembre 2008
    Messages : 230
    Par défaut
    par contre a chaque fois faut modifier le fichier XML du code on peut pas que modifier le fichier en lui meme sans modifier le code ?

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [XML / XPATH] Manipuler fichiers XML Cross browser
    Par Nadinette dans le forum Général JavaScript
    Réponses: 0
    Dernier message: 27/01/2014, 15h32
  2. [XML] Architecture projet PHP manipulant fichiers XML
    Par HaTnuX dans le forum Bibliothèques et frameworks
    Réponses: 0
    Dernier message: 11/08/2013, 10h56
  3. Manipuler fichier XML en DOM sous Netbeans
    Par keddari dans le forum NetBeans
    Réponses: 1
    Dernier message: 29/07/2012, 12h36
  4. manipulation fichier xml avec java
    Par feridferid dans le forum Format d'échange (XML, JSON...)
    Réponses: 3
    Dernier message: 03/10/2009, 09h50
  5. Réponses: 4
    Dernier message: 05/12/2007, 16h11

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo