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 :

Suppression conditionnelles d'éléments XML


Sujet :

C#

  1. #1
    Membre régulier Avatar de Nixar
    Profil pro
    Inscrit en
    Mars 2006
    Messages
    302
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2006
    Messages : 302
    Points : 85
    Points
    85
    Par défaut Suppression conditionnelles d'éléments XML
    Bonjour,
    Je cherche à pouvoir supprimer des noeuds XML sur le test d'un de leurs attributs. Ces noeuds ont un attribut "date" ,et je souhaite ne garder que les 3 noeuds dont les dates sont les plus récentes.

    Pour le moment j'ai fait une hashtable qui contient tous mes noeuds en clé, puis la date en valeur.
    Je n'arrive pas à les trier par contre. Je ne vois pas comment faire en sorte de garder mon couple noeud/date, pour pouvoir les trier , et supprimer les noeuds que je veux.

    J'espère avoir été clair,

    Merci de vos réponses.

    Nixar

  2. #2
    Membre expérimenté
    Homme Profil pro
    Inscrit en
    Juillet 2007
    Messages
    1 277
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Réunion

    Informations forums :
    Inscription : Juillet 2007
    Messages : 1 277
    Points : 1 521
    Points
    1 521
    Par défaut
    Le plus simple c'est de créer deux tableaux et des les trier via Array.Sort.

  3. #3
    Membre régulier Avatar de Nixar
    Profil pro
    Inscrit en
    Mars 2006
    Messages
    302
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2006
    Messages : 302
    Points : 85
    Points
    85
    Par défaut
    Merci de ta réponse.

    Si je créé 2 tableaux, un pour mes noeuds et l'autre pour mes dates, comment vais-je garder le lien entre les 2 afin que les noeuds soient ordonnés selon le tri des dates?

    La méthode Sort permet-elle de gérer ca?

    Merci de ta réponse

  4. #4
    Membre expérimenté
    Homme Profil pro
    Inscrit en
    Juillet 2007
    Messages
    1 277
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Réunion

    Informations forums :
    Inscription : Juillet 2007
    Messages : 1 277
    Points : 1 521
    Points
    1 521
    Par défaut
    La méthode Sort prend 2 tableaux en entrée : les clés et les valeurs. Donc oui, il trie les deux en même temps en fonction du tableau clés.

  5. #5
    Membre régulier Avatar de Nixar
    Profil pro
    Inscrit en
    Mars 2006
    Messages
    302
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2006
    Messages : 302
    Points : 85
    Points
    85
    Par défaut
    Bonjour,

    J'arrive bien à ne sélectionner que les objets XmlChildNode que je souhaite supprimer (je les mets dans un tableau XmlChildNode[]). Je les trie correctement avec mon tableau de Dates (comme me l'a suggéré Kaidan).

    Maintenant, je voudrais supprimer certains de ces noeuds de mon fichier XML. Or il est nécessaire pour utiliser la méthode Remove() de se mettre sur le noeud parent du noeud qu'on voudrait supprimer.

    Etant donné que chacun de mes XmlNode est unique et complètement défini, je voudrais pouvoir les supprimer simplement. Existe-t-il une propriété ou une méthode qui extrait l'arborescence complète du XmlNode, pour pouvoir soit y accéder depuis la racine du doc soit dans mon cas le supprimer?

    J'espère être assez clair.

    Merci de vos réponses.

    Nixar

  6. #6
    Futur Membre du Club
    Profil pro
    Inscrit en
    Janvier 2007
    Messages
    7
    Détails du profil
    Informations personnelles :
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations forums :
    Inscription : Janvier 2007
    Messages : 7
    Points : 8
    Points
    8
    Par défaut
    personnellement j'passe par un dataset pour ce genre de traitements.

    tu veux un exemple de code?

  7. #7
    Rédacteur
    Avatar de The_badger_man
    Profil pro
    Développeur .NET
    Inscrit en
    Janvier 2005
    Messages
    2 745
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Développeur .NET

    Informations forums :
    Inscription : Janvier 2005
    Messages : 2 745
    Points : 8 538
    Points
    8 538
    Par défaut
    Quelle version du framework utilises-tu ?
    C'est le genre de problématiques que LinqToXML (framework 3.5) peut résoudre en 5 lignes.

  8. #8
    Membre régulier Avatar de Nixar
    Profil pro
    Inscrit en
    Mars 2006
    Messages
    302
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2006
    Messages : 302
    Points : 85
    Points
    85
    Par défaut
    Bonjour et merci de vos réponses,

    @web-inside : oui je veux bien un exemple de code, ca m'intéresse beaucoup je te remercie d'avance !

    @The_badger_man : j'utilise pour le moment le framework 2.0. Je ne connais pas le link to XML. L'utilises-tu? Peux-tu m'en dire 2 mots? Merci bcp !


    Nxar

  9. #9
    Membre éprouvé Avatar de alain.couthures
    Profil pro
    Gérant
    Inscrit en
    Avril 2007
    Messages
    902
    Détails du profil
    Informations personnelles :
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Gérant

    Informations forums :
    Inscription : Avril 2007
    Messages : 902
    Points : 1 247
    Points
    1 247
    Par défaut
    Je ne comprend pas pourquoi vous ne pouvez pas utiliser la propriété .ParentNode sur XmlNode pour récupérer le parent du noeud à supprimer ???

Discussions similaires

  1. [JDOM] Suppression d'un élément dans un fichier XML avec JDOM
    Par pomolo11 dans le forum Format d'échange (XML, JSON...)
    Réponses: 1
    Dernier message: 08/12/2013, 11h36
  2. [JDOM] Problème suppression élément xml
    Par bidulee dans le forum Format d'échange (XML, JSON...)
    Réponses: 3
    Dernier message: 30/04/2009, 11h13
  3. [JDOM] Suppression élément xml
    Par bidulee dans le forum Format d'échange (XML, JSON...)
    Réponses: 8
    Dernier message: 24/04/2009, 20h31
  4. Suppression élément XML?
    Par jeepibmx dans le forum Débuter
    Réponses: 9
    Dernier message: 01/08/2008, 14h59
  5. Réponses: 14
    Dernier message: 01/12/2003, 17h47

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