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

Format d'échange (XML, JSON...) Java Discussion :

Problème avec jdom [JDOM]


Sujet :

Format d'échange (XML, JSON...) Java

  1. #1
    Membre confirmé
    Inscrit en
    Mars 2011
    Messages
    232
    Détails du profil
    Informations forums :
    Inscription : Mars 2011
    Messages : 232
    Par défaut Problème avec jdom
    salut,

    mon but est comment acceder à une valeur dans le fichier test.xml pour modifier une valeur,

    le fichier test.xml est :
    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
    22
    23
    24
    25
    26
    27
    28
    29
    30
    <?xml version="1.0" encoding="UTF-8"?>
    <groupes>
      <groupe>
        <numero>99999999<numero>
        <identifiant>001</identifiant>
            <socite>
          <type>marketing</type>
          <local>Parix</local>
        </socite>
         <socite>
          <type>Gestion</type>
          <local>nework</local>        
        </socite>
     
      </groupe>
     
       <groupe>
     <numero>77777777<numero>
        <identifiant>002</identifiant>
            <socite>
          <type>Developpement</type>
          <local>Almend</local>
        </socite>
         <socite>
          <type>Maintenace</type>   
          <local>Berline</local>
        </socite>
     
      </groupe>
    </groupes>
    mon but est de modifier le local de la societe qui a comme type :"marketing" et rendre leur local : CHINA



    donc cette societe au lieu d'avoir le local "Parix " elle doit avoir "CHINA"


    j'arrive a modifier des donnes dans ce fichier (tes.xml) à travers une classe java :

    mais le problème est que j'arrive à modifier par exemple le numero de groupe :

    par exemple modification de groupe qui a l'identifiant "001" et rendre on numero "33333333"


    le code java qui realise ca est :
    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
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    		String ident="001"
    		String nouveaunumero="33333333";
     
    SAXBuilder sxb=new SAXBuilder();
    		Document document = null;
     
     
    					document = sxb.build(new File("test.xml"));
     
     
    Element groupes=document.getRootElement();
     
    		List<Element> en=groupes.getChildren();
     
     
           for(Element groupe:en){
     
     
    	String loc=groupe.getChild("identifiant").getText();
     
     
     
            if(loc.equals(ident)){
     
    			groupe.getChild("numero").setText(nouveaunumero);
    		}
    		XMLOutputter xmlOutput= new XMLOutputter(Format.getPrettyFormat());
     
     
    				xmlOutput.output(document, new FileOutputStream("test.xml"));
     
     
     
            }
    et à travers ce code j'arrive à modifier des donneés dans le fichier test.xml


    mais si on revient au but initiale c'est de modifier le local de la societe qui a comme type :"marketing" et rendre leur local : CHINA


    comme vous voyer le groupe a aussi une liste de societe

    SVP avec le même code (bien sur avec une petite modification ) juste comment accéder a la societe qui est dans le groupe


    pour modifier son local (bien sur la modification touche juste le : la societe qui a comme type :"marketing")

    avec deux variable

    typeanc="marketing";
    nouvLoca="CHINA";

    et parser bien sur le fichier test.xml de la même manière et faire le test nécessaire

    est ce que quelqu'un pouvez m'aidez

    merci d'avance

  2. #2
    Modérateur

    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    12 577
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2004
    Messages : 12 577
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    if(loc.equals(ident)){
      groupe.getChild("numero").setText(nouveaunumero);
     
      List<Element> societes = getChildren("societe");
      for(Element societe : societes) {
        // etc, etc.
      }
    }
    Bien sûr, ce serait un peu moins verbeux, et sans doute plus simple, avec du XPath. Mais tu as dit "ce même genre de code," donc bon...
    N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java

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

Discussions similaires

  1. Problème avec JDom et sessions http
    Par mithrendil dans le forum Servlets/JSP
    Réponses: 1
    Dernier message: 30/06/2008, 11h57
  2. Problème avec jdom
    Par monpseudonom dans le forum Général Java
    Réponses: 4
    Dernier message: 07/05/2008, 08h56
  3. [JDOM] Problème avec JDOM
    Par fatenatwork dans le forum Format d'échange (XML, JSON...)
    Réponses: 2
    Dernier message: 28/09/2007, 10h56
  4. [JDOM] Problème avec JDom
    Par ALIAS200 dans le forum Format d'échange (XML, JSON...)
    Réponses: 9
    Dernier message: 12/05/2007, 14h30
  5. [Plugin / XML] Problème plugin Eclipse avec JDOM
    Par kiko_18 dans le forum Eclipse Platform
    Réponses: 1
    Dernier message: 12/02/2005, 13h55

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