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 :

Atteindre une valeur dans un fichier xml


Sujet :

C#

  1. #1
    Nouveau membre du Club
    Profil pro
    Architecte Cloud
    Inscrit en
    Mars 2009
    Messages
    27
    Détails du profil
    Informations personnelles :
    Localisation : France, Somme (Picardie)

    Informations professionnelles :
    Activité : Architecte Cloud

    Informations forums :
    Inscription : Mars 2009
    Messages : 27
    Points : 33
    Points
    33
    Par défaut Atteindre une valeur dans un fichier xml
    Bonjour,

    voilà je débute en c#, et j'essaye de retrouver des valeurs bien précises en c# dans un document xml

    voici un exemple de mon xml

    Code XML : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    <?xml version="1.0" encoding="utf-8"?> 
     
    <voiture> 
    <peugeot> 
    <206>vert</206> 
    </peugeot> 
    </voiture>

    (il s'agit bien sûr d'un cas d'école, cherchez pas l'intérêt de ce fichier )

    Je sais très bien dans mon code que la valeur qui m'intéresse, c'est le contenu de la balise "206", donc vert.

    Mais ce fichier xml peut être modifié et donc des noeuds peuvent venir se rajouter, donc il me faut bien quelque chose pour atteindre la balise 206 en parcourant tout le fichier (jusqu'à ce qu'il trouve sa valeur en fait)

    Pour le moment j'ai ça:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    using System; 
    using System.xml; 
     
    XmlDocument voiture = new XmlDocument(); 
    voiture.Load("voiture.xml"); 
     
    //et la je ne trouve pas de code pour aller chercher le noeud <voiture\peugeot\206>
    Quelqu'un peut-il m'aider?
    Je précise que le fichier xml devrait contenir une centaine de valeur, donc rien d'inquiétant niveau délai d'exécution

    Merci d'avance!

  2. #2
    Max
    Max est déconnecté
    Expert éminent sénior

    Avatar de Max
    Homme Profil pro
    Artisan développeur
    Inscrit en
    Mai 2007
    Messages
    2 954
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France, Pyrénées Atlantiques (Aquitaine)

    Informations professionnelles :
    Activité : Artisan développeur
    Secteur : Industrie

    Informations forums :
    Inscription : Mai 2007
    Messages : 2 954
    Points : 14 933
    Points
    14 933
    Par défaut
    Salut.

    Tu trouveras toutes les réponses à ta question dans la FAQ ...

    Qui se situe ici

  3. #3
    Nouveau membre du Club
    Profil pro
    Architecte Cloud
    Inscrit en
    Mars 2009
    Messages
    27
    Détails du profil
    Informations personnelles :
    Localisation : France, Somme (Picardie)

    Informations professionnelles :
    Activité : Architecte Cloud

    Informations forums :
    Inscription : Mars 2009
    Messages : 27
    Points : 33
    Points
    33
    Par défaut
    Merci beaucoup je ne l'avais pas vu celui la!

    Je pense que ça va bien m'aider

  4. #4
    Nouveau membre du Club
    Profil pro
    Architecte Cloud
    Inscrit en
    Mars 2009
    Messages
    27
    Détails du profil
    Informations personnelles :
    Localisation : France, Somme (Picardie)

    Informations professionnelles :
    Activité : Architecte Cloud

    Informations forums :
    Inscription : Mars 2009
    Messages : 27
    Points : 33
    Points
    33
    Par défaut remplacer la valeur
    Salut!

    Me voilà avec un nouveau soucis xml, et je n'ai rien trouvé pour m'aider dans les docs et sur le forum.

    En fait disons que je charge mon fichier, j'atteins maintenant correctement mes valeurs, je fais tout mes traitements, et ensuite je veux remplacer "vert" par "bleu".

    et la... blocage... je ne sais pas du tout comment faire.
    quelqu'un peut-il m'aiguiller?

    Merci d'avance!

  5. #5
    Nouveau membre du Club
    Profil pro
    Architecte Cloud
    Inscrit en
    Mars 2009
    Messages
    27
    Détails du profil
    Informations personnelles :
    Localisation : France, Somme (Picardie)

    Informations professionnelles :
    Activité : Architecte Cloud

    Informations forums :
    Inscription : Mars 2009
    Messages : 27
    Points : 33
    Points
    33
    Par défaut
    j'ai un peu avancé, mais je bloque tjs pour l'écriture

    Voici mon code

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    XmlDocument editXML = new XmlDocument();
                        editXML.Load(newXMLPath);
                        XmlNodeList lstIndex = editFDA.GetElementsByTagName("206");
                        foreach (XmlNode Couleur in lstIndex)
                        {
                         Couleur.Value = "Bleu";
                        }
    j'ai trouvé un autre code qui me parait mieux niveau syntaxe, mais qui a la même erreur:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    XmlDocument editXML = new XmlDocument();
    editXML.InnerXml = File.ReadAllText(newXMLPath);
    editXML.SelectSingleNode("voiture/peugeot/206").Value = "Bleu";
    File.WriteAllText(newFDAPath, editFDA.InnerXml);
    J'arrive bien à accéder à la propriété Name, mais pas à Value

    Merci à vous!

  6. #6
    Max
    Max est déconnecté
    Expert éminent sénior

    Avatar de Max
    Homme Profil pro
    Artisan développeur
    Inscrit en
    Mai 2007
    Messages
    2 954
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France, Pyrénées Atlantiques (Aquitaine)

    Informations professionnelles :
    Activité : Artisan développeur
    Secteur : Industrie

    Informations forums :
    Inscription : Mai 2007
    Messages : 2 954
    Points : 14 933
    Points
    14 933
    Par défaut
    Re.

    A ma connaissance, premier point, une balise XML ne doit pas commencer par un chiffre

    Ensuite, je te renvoie vers l'excellent tutoriel de Jean-François Determe où tu trouveras le bloc de code que tu recherches !

    Bonne continuation

  7. #7
    Nouveau membre du Club
    Profil pro
    Architecte Cloud
    Inscrit en
    Mars 2009
    Messages
    27
    Détails du profil
    Informations personnelles :
    Localisation : France, Somme (Picardie)

    Informations professionnelles :
    Activité : Architecte Cloud

    Informations forums :
    Inscription : Mars 2009
    Messages : 27
    Points : 33
    Points
    33
    Par défaut
    j'ai réussi encore merci à toi!

    En fait je n'ai pas de chiffre, la c'était juste pour l'exemple, mais je ne savais pas qu'on ne pouvait par contre

    Merci beaucoup de ton aide

  8. #8
    Max
    Max est déconnecté
    Expert éminent sénior

    Avatar de Max
    Homme Profil pro
    Artisan développeur
    Inscrit en
    Mai 2007
    Messages
    2 954
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France, Pyrénées Atlantiques (Aquitaine)

    Informations professionnelles :
    Activité : Artisan développeur
    Secteur : Industrie

    Informations forums :
    Inscription : Mai 2007
    Messages : 2 954
    Points : 14 933
    Points
    14 933
    Par défaut
    Pas de souci

    Pense au tag si tout est OK !

Discussions similaires

  1. [XSLT] Remplacer une valeur dans un fichier XML
    Par NicoV dans le forum XSL/XSLT/XPATH
    Réponses: 1
    Dernier message: 23/11/2009, 16h21
  2. Réponses: 3
    Dernier message: 04/03/2009, 11h35
  3. Modifier une valeur dans un fichier xml
    Par arthrax dans le forum VBScript
    Réponses: 3
    Dernier message: 03/04/2007, 09h46
  4. [XSL]récupérer une valeur de plusieurs fichiers XML
    Par snoop dans le forum XSL/XSLT/XPATH
    Réponses: 7
    Dernier message: 05/02/2006, 00h32
  5. Prendre une valeur dans la grappe XML
    Par Sandrine75 dans le forum XMLRAD
    Réponses: 7
    Dernier message: 21/05/2003, 10h26

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