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 :

DOM - Problème de mise à jour d'un noeud [DOM]


Sujet :

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

  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Juin 2005
    Messages
    117
    Détails du profil
    Informations personnelles :
    Âge : 46
    Localisation : France

    Informations forums :
    Inscription : Juin 2005
    Messages : 117
    Points : 53
    Points
    53
    Par défaut DOM - Problème de mise à jour d'un noeud
    Bonjour
    J'utilise org.w3c.dom pour la gestion de mon fichier xml.

    J'ai un souci lors de la mise à jour d'un noeud.
    J'utilise la commande suivante pour mettre à jour mon noeud.

    Node mynode = ....:
    mynode.setNodeValue("TATA");

    Pour Node0, cela va bien se mettre à jour.
    Mais pas pour Node1

    Avez vous une explication.

    Merci
    Ce dessous :
    Mon xml :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    <root>
         <Node0>Toto</Node0>
         <Node1/>
    </root>

  2. #2
    Membre habitué
    Homme Profil pro
    Ingénieur développement Java/Web
    Inscrit en
    Juin 2009
    Messages
    61
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Ingénieur développement Java/Web

    Informations forums :
    Inscription : Juin 2009
    Messages : 61
    Points : 140
    Points
    140
    Par défaut
    Salut,
    Comment t'as fais pour passer de noeud0 au noeud1?
    Est ce que tu peux mettre le code?

  3. #3
    Membre du Club
    Profil pro
    Inscrit en
    Juin 2005
    Messages
    117
    Détails du profil
    Informations personnelles :
    Âge : 46
    Localisation : France

    Informations forums :
    Inscription : Juin 2005
    Messages : 117
    Points : 53
    Points
    53
    Par défaut
    en fait, j'ai un noeud principal

    Node node = (Node) xpath.evaluate("root", docXml, XPathConstants.NODE);

    puis je liste les noeud de root

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    for (int i = 0; i < node.getChildNodes().getLength(); i++) {
    		Node nodechild = node.getChildNodes().item(i);
    pour

    nodechild.setNodeValue("VALUE");

    cela marche lorsque mon noeud a déja une valeur ( par exemple <Node0>Toto</Node0>) mais pas pour <Node1/>

  4. #4
    Modérateur

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

    Informations forums :
    Inscription : Septembre 2004
    Messages : 12 554
    Points : 21 615
    Points
    21 615
    Par défaut
    C'est plutôt étrange. Normalement ça ne devrait pas marcher avec <Node0>.

    Ça peut modifier un nœud texte ou processing-instruction, mais pas le contenu d'un élément.
    N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java

  5. #5
    Membre du Club
    Profil pro
    Inscrit en
    Juin 2005
    Messages
    117
    Détails du profil
    Informations personnelles :
    Âge : 46
    Localisation : France

    Informations forums :
    Inscription : Juin 2005
    Messages : 117
    Points : 53
    Points
    53
    Par défaut
    Et il faudrait quoi pour modifier mes noeuds alors

  6. #6
    Modérateur

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

    Informations forums :
    Inscription : Septembre 2004
    Messages : 12 554
    Points : 21 615
    Points
    21 615
    Par défaut
    Pour modifier le contenu d'un élément, il faut modifier ses enfants : nœuds texte, éléments enfants...
    N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java

  7. #7
    Rédacteur
    Avatar de darrylsite
    Profil pro
    Inscrit en
    Juillet 2007
    Messages
    1 299
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Juillet 2007
    Messages : 1 299
    Points : 2 501
    Points
    2 501
    Par défaut
    La méthode setTextContent(String textContent) peut faire ce que tu veux.

  8. #8
    Membre du Club
    Profil pro
    Inscrit en
    Juin 2005
    Messages
    117
    Détails du profil
    Informations personnelles :
    Âge : 46
    Localisation : France

    Informations forums :
    Inscription : Juin 2005
    Messages : 117
    Points : 53
    Points
    53
    Par défaut
    Merci pour ces infos, mes ta méthode ne marche pas.
    En fait, si j'ai dans mon fichier xml
    <Node1/>
    ou
    <Node1></Node1>

    la valeur ne se met pas à jour
    Mais si j'ai
    <Node1> </Node1> "avec un espace"
    ou
    <Node1>value</Node1>

    La mise à jour se fait correctement.

  9. #9
    Membre du Club
    Profil pro
    Inscrit en
    Juin 2005
    Messages
    117
    Détails du profil
    Informations personnelles :
    Âge : 46
    Localisation : France

    Informations forums :
    Inscription : Juin 2005
    Messages : 117
    Points : 53
    Points
    53
    Par défaut
    Problème résolu. en fait, je calculait ensuite le nombre d'enfant de mon noeud.

    Merci pour votre aide.

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

Discussions similaires

  1. [DOM] Problème de mise à jour du fichier
    Par Galip dans le forum Bibliothèques et frameworks
    Réponses: 2
    Dernier message: 16/01/2008, 14h45
  2. Problème de mise à jour de données avec IBClientDataset
    Par Papino dans le forum Bases de données
    Réponses: 6
    Dernier message: 26/09/2005, 14h04
  3. [2000 Server] Problème de mise à jour windowsupdate !!
    Par rohstev dans le forum Autres Logiciels
    Réponses: 8
    Dernier message: 24/08/2005, 15h03
  4. Problème de mise à jour de base de données
    Par poirier dans le forum ASP
    Réponses: 2
    Dernier message: 26/05/2004, 11h38
  5. problème de mise à jour de BD
    Par tidiane dans le forum Bases de données
    Réponses: 5
    Dernier message: 04/03/2004, 15h32

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