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

APIs XML Discussion :

recherche dans un document xml via DOM


Sujet :

APIs XML

  1. #1
    Futur Membre du Club
    Inscrit en
    Avril 2003
    Messages
    9
    Détails du profil
    Informations forums :
    Inscription : Avril 2003
    Messages : 9
    Points : 5
    Points
    5
    Par défaut recherche dans un document xml via DOM
    SALUT A TOUT LE MONDE

    Je veux utiliser DOM dans un petit programme java pour qu'il m'affiche les informations que je desire dans un document xml. Bon je vais etre plus claire.Soit le document agenda.xml suivant:

    <annuaire>

    <personne>
    <nom> ABABACAR </nom>
    <telephone>651.36.01</telephone>
    <adresse> 25,rue vincent</adresse>
    </personne>

    <personne>
    <nom> NDOYE </nom>
    <telephone>651.02.04</telephone>
    <adresse> 2,rue albert saraud</adresse>
    </personne>

    <personne>
    <nom> ROSE </nom>
    <telephone>651.30.81</telephone>
    <adresse> 21,rue bourguiba</adresse>
    </personne>

    </anuaire>

    LE PROGRAMME SUIVANT m'affiche tous les noms qui figurent dans le document.

    c'est-a-dire:
    ABABACAR
    NDOYE
    ROSE

    PROGRAMME:

    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
    19
    20
    21
    import org.w3c.dom.Document;
    import org.w3c.dom.Element;
    import org.w3c.dom.NodeList;
    import org.apache.xerces.parsers.DOMParser;
     
    public class TestDOM
    {
    public static void main( String [] args ) throws Exception
      {
         DOMParser parser = new DOMParser();
         parser.parse("agenda.xml");
         Document document = parser.getDocument();
         Element annuaire = document.getDocumentElement();
         NodeList noms = annuaire.getElementsByTagName("nom");
         System.out.println("Les noms sont: ");
         for (int i=0; i<noms.getLength(); i++) 
        {
            System.out.println(noms.item(i).getFirstChild().getNodeValue());
         }
      }
    }
    MAIS moi je veux modifier ce programme pour qu'il recherche sur le document si le nom "ABABACAR" existe, si oui , il m'affiche son nom, son telephone et son adresse

    MERCI D'AVANCE

    [Message édité par Nicolas Cuny.]
    Merci d'encadrer vos programmes avec des balises [code].
    Merci de limiter l'utilisation de majuscules dans vos message.

  2. #2
    Nouveau membre du Club
    Inscrit en
    Octobre 2002
    Messages
    74
    Détails du profil
    Informations forums :
    Inscription : Octobre 2002
    Messages : 74
    Points : 36
    Points
    36
    Par défaut
    utilises les balises CODE !!!

  3. #3
    Futur Membre du Club
    Inscrit en
    Avril 2003
    Messages
    9
    Détails du profil
    Informations forums :
    Inscription : Avril 2003
    Messages : 9
    Points : 5
    Points
    5
    Par défaut recherche sur un document xml via DOM
    SALUT
    JE NE COMPREND PAS LES BALISES CODES. EST-CE QU'ON PEUT PAS MODIFIER MON PROGRAMME POUR QU'IL FASSE CE TRAVAIL?

  4. #4
    Nouveau membre du Club
    Inscrit en
    Octobre 2002
    Messages
    74
    Détails du profil
    Informations forums :
    Inscription : Octobre 2002
    Messages : 74
    Points : 36
    Points
    36
    Par défaut
    non quand tu posts sur le forum et que tu insères un bout de code, mets le entre des balises "Code"

  5. #5
    Membre confirmé
    Avatar de grishka
    Inscrit en
    Janvier 2003
    Messages
    285
    Détails du profil
    Informations forums :
    Inscription : Janvier 2003
    Messages : 285
    Points : 499
    Points
    499
    Par défaut
    c'est pas bien compliqué en utilisant l'api dom. Encore faut-il penser à la regarder avant de poser une question . Le code java ressemblerait à ca :

    1) récupères la liste des noeuds "personne"

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    NodeList personnes = annuaire.getElementsByTagName("personne");
    2) parcoures cette liste en t'arrêtant sur le noeud personne dont le sous-noeud nom correspond (passé en paramètre)

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    Node laPersonne=null;
    for(int i=0;i<personnes.getLength();++i) {
      NodeList noms = personnes.item(i).getElementsByTagName("nom"); 
      if(noms.getLength()>0 && noms.item(0).getFirstChild().getNodeValue().equals(args[0])) {
      laPersonne = personnes.item(i);
    }
    }
    3) affiches le noeud personne

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
    if(laPersonne != null) {
    NodeList children = laPersonne.getChildNodes();
     for(int i=0; i<children.getLength();++i) {
       System.out.println(...);
    }
    }
    "Les gens normaux croient que si ca marche, c'est qu'il n'y a rien à reparer. Les ingénieurs croient que si ca marche, c'est que ca ne fait pas encore assez de choses."
    --Scott Adams

  6. #6
    Futur Membre du Club
    Inscrit en
    Avril 2003
    Messages
    9
    Détails du profil
    Informations forums :
    Inscription : Avril 2003
    Messages : 9
    Points : 5
    Points
    5
    Par défaut recherche dans un document xml via DOm
    MERCI DE M'AVOIR AIDER JE VAIS VOIR TOUT DE SUITE CE QUE CA DONNE ET APRES JE VOUS FERAI SIGNE.
    MERCI ENCORE C'EST TRES GENTIL DE VOTRE PART

Discussions similaires

  1. Réponses: 33
    Dernier message: 22/08/2011, 14h33
  2. Recherche d'element dans un document XML
    Par FlyByck dans le forum Général JavaScript
    Réponses: 3
    Dernier message: 05/07/2010, 20h37
  3. Recherche d'un path dans un document XML
    Par rambc dans le forum Général Python
    Réponses: 5
    Dernier message: 02/05/2010, 22h32
  4. [DOM] Recherche dans un fichier XML via XPath
    Par Sayrus dans le forum Bibliothèques et frameworks
    Réponses: 6
    Dernier message: 18/06/2007, 16h43
  5. Stocker du texte mis en forme dans un document XML
    Par ovh dans le forum XML/XSL et SOAP
    Réponses: 2
    Dernier message: 13/02/2003, 10h23

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