Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1420 connectés 

  FORUM HardWare.fr
  Programmation
  Java

  Lire un XML (tag spécifique) avec java

 



 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

Lire un XML (tag spécifique) avec java

n°1475976
didier1809
${citation_perso}
Posté le 15-11-2006 à 17:35:54  profilanswer
 

:hello:  
 
Je suis en train d'essayer de faire une fonction Java (dans une Jsp, mais soit ...) qui permet d'aller lire un element en particulier dans un xml
 
Par exemple mon xml :
 
 <data>
 <GUID>  
  <main-process>aaa</main-process>  
  <management-process>ddd</management-process>
  <support-process>zzz</support-process>
 </GUID>
</data>
 
Et j'aimerai avoir une fonction de type String getXmlValue(String Element (= main-process par exemple)) qui me retournerai "aaa"
 
 
Voici ou j'en suis :
 

Code :
  1. public void getXMLText(String strElement){
  2.     try {
  3.  
  4.         DocumentBuilderFactory docBuilderFactory = DocumentBuilderFactory.newInstance();
  5.         DocumentBuilder docBuilder = docBuilderFactory.newDocumentBuilder();
  6.         Document doc = docBuilder.parse (new File("blabla...\\config.xml" ));
  7.     
  8.     
  9.         // normalize text representation
  10.         doc.getDocumentElement ().normalize ();
  11.         
  12.     
  13.     
  14.         NodeList listOfTexts = doc.getElementsByTagName(strElement);
  15.       
  16.          System.out.println(strElement + " %%%%%" + listOfTexts.getLength());
  17.     
  18.         for(int s=0; s<listOfTexts.getLength() ; s++){
  19.             
  20.             System.out.println(s + "%% [" + listOfTexts.item(s).toString());
  21.         }
  22.     
  23.     System.out.println("********************************" );
  24.     }catch (SAXParseException err) {
  25.     System.out.println ("** Parsing error" + ", line "
  26.          + err.getLineNumber () + ", uri " + err.getSystemId ());
  27.     System.out.println(" " + err.getMessage ());
  28.     
  29.     }catch (SAXException e) {
  30.     Exception x = e.getException ();
  31.     ((x == null) ? e : x).printStackTrace ();
  32.     
  33.     }
  34.     
  35.     catch (Exception ex){
  36.         System.out.println("Critical error" );
  37.     }
  38.     
  39. }


 
et mon output est :
 
********************************
main-process %%%%%3
0%% [[main-process: null]
1%% [[main-process: null]
2%% [[main-process: null]
********************************
 
Si quelqu'un pouvais m'aider, je lui en serais infioniment reconnaisant !
 
MErci d'avance :jap:


---------------
.
mood
Publicité
Posté le 15-11-2006 à 17:35:54  profilanswer
 

n°1475982
jbourdello​n
Posté le 15-11-2006 à 17:42:55  profilanswer
 

Remplace ca :  

Citation :

listOfTexts.item(s).toString()


Par ca :  

Citation :

listOfTexts.item(s).getNodeValue()

n°1475984
jbourdello​n
Posté le 15-11-2006 à 17:44:08  profilanswer
 

Et si c'est un fichier de config je crois qu'il y a un truc du genre java.util.Properties et dedans un loadXMLProperties ( je suis pas sur des noms exacts mais je sais que ca existe

n°1476059
didier1809
${citation_perso}
Posté le 15-11-2006 à 21:43:13  profilanswer
 

Merci je vais tester.
 
C'est un fichier de config, oui, mais qui correspond juste à des variables qui doivent pouvoir êtres changées rapidement et facilement. Ce n'est pas un fichier de config d'une appli ... (Je ne sais pas si je suis clair :D)


---------------
.
n°1476164
brisssou
8-/
Posté le 16-11-2006 à 08:05:54  profilanswer
 

sinon, Digester sur jakarta.apache.org


---------------
HFR - Mes sujets pour Chrome - Firefox - vérifie les nouveaux posts des topics suivis/favoris
n°1476165
didier1809
${citation_perso}
Posté le 16-11-2006 à 08:11:07  profilanswer
 

jbourdellon a écrit :

Remplace ca :  

Citation :

listOfTexts.item(s).toString()


Par ca :  

Citation :

listOfTexts.item(s).getNodeValue()



 
Cela me renvoie "null" :/


---------------
.
n°1486406
cymp
Posté le 05-12-2006 à 01:22:57  profilanswer
 

c'est normal ca te donne la value du node <main-process>, il te faut la value de son fils qui est lui un text node.
 
tu n'as qu'a faire un getChild().getNodeValue() sur ce noeud et ca fonctionnera.


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  Java

  Lire un XML (tag spécifique) avec java

 

Sujets relatifs
[C++&JAVA] Choisir une DLL ou un exe ?VB.net Prob lire première ligne de mon fichier avec mon progr
[Java] Interface Graphique : pb setLocation & setSizeJava : questions sur le capacités du langage
Texte défilant pour news avec javaJava : redimensionnement d'un Canvas3D
Un programme java sur une page Htmlscript pour lire une vidéo
[Java][Resolu] Lancer le navigateur web 
Plus de sujets relatifs à : Lire un XML (tag spécifique) avec java


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR