BONJOUR!
SVP ! donnez moi une idée comment faire pour lire des données d'un fichier XML à partir d'une classe java .
MERCI Bc !
BONJOUR!
SVP ! donnez moi une idée comment faire pour lire des données d'un fichier XML à partir d'une classe java .
MERCI Bc !
Il te faut utiliser soit un parseur XML (DOM, JDOM, SAX, ...) ou alors, tu le lis comme un fichier texte en extrayant les infos dont tu as besoinEnvoyé par kamaldev
tu peux voir dans la faq (partie xml)
http://java.developpez.com/faq/java/?page=langage_xml
edit : je vois pas de faw....mauvaise fois
merci d avance
mais en fait la faw c'est quoi exactement?
C'est une FAQ qui prend son Q pour un W...Envoyé par kamaldev
à vrai dire je veux faire marcher ce programme mais il marche pas ! il y a une erreur sur la ligne rouge :
à l execution : il affiche sur la console le message suivant :
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
35
36 import java.io.*; import java.text.Format; import org.jdom.*; import org.jdom.Document; import org.jdom.output.*; import javax.xml.parsers.*; import org.w3c.dom.*; import org.xml.sax.*; public class JDOM1 { public static void main(String[] args){ try{ // création d'une fabrique de documents DocumentBuilderFactory fabrique = DocumentBuilderFactory.newInstance(); // création d'un constructeur de documents DocumentBuilder constructeur = fabrique.newDocumentBuilder(); // lecture du contenu d'un fichier XML avec DOM File xml = new File("C:/book.xml"); Document document = constructeur.parse(xml); //traitement du document //voir ExempleDOM.zip }catch(ParserConfigurationException pce){ System.out.println("Erreur de configuration du parseur DOM"); System.out.println("lors de l'appel à fabrique.newDocumentBuilder();"); }catch(SAXException se){ System.out.println("Erreur lors du parsing du document"); System.out.println("lors de l'appel à construteur.parse(xml)"); }catch(IOException ioe){ System.out.println("Erreur d'entrée/sortie"); System.out.println("lors de l'appel à construteur.parse(xml)"); } } }
java.lang.ClassCastException
at JDOM1.main(JDOM1.java:24)
Exception in thread "main"
voilà
le probleme est affiché sur l anglai probleme de Eclipse :
Type mismatch: cannot convert from Document to Document JDOM1.java LectureDeFichierXML line 24
voilà donc
pour le "faw" c'est une erreur .lit plutot "faq".
sinon essaye de caster :
Code : Sélectionner tout - Visualiser dans une fenêtre à part Document document = (Document)constructeur.parse(xml);
non walou ça donne rien du tout !
l erreur qu il affiche si je caste c'est :
java.lang.ClassCastException
at ServiceQuery.main(ServiceQuery.java:27)
Exception in thread "main"
mais si je remplace Document par : XMLDocument : càd
XmlDocument document = (XmlDocument) constructeur.parse(xml);
mais c'est quoi la difference entre les deux ??
Voilà mon fichier xml :
lorsque je fais:
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 <?xml version="1.0" encoding="UTF-8"?> <Queries> <Query Subject="Java 1.5" > <Body>select * from 1 ........</Body> </Query> <Query Subject="Java Architect" > <Body>select * from 2 .........</Body> </Query> <Query Subject="Java Architect" > <Body>select * from 3 .........</Body> </Query> </Queries>
il m affiche :
Code : Sélectionner tout - Visualiser dans une fenêtre à part System.out.println("le corps du la tag :"+ document.getElementsByTagName("Body").item(2));
>> ma question comment faire pour afficher just le contenu du la tag sans inclure les tag <Body> ...</Body> ces tag c'est moi qui les defini ds le fichier xml (par hasard j les nommé body ils ne sont pas des mots clé )
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2le corps du la tag :<Body>select * from 3 .........</Body>
Code : Sélectionner tout - Visualiser dans une fenêtre à part document.getElementsByTagName("Body").item(2).getNodeValue();
non ça donne null à l affichage
n tout cas c'est avec
que tu recupere le contenu d'un noeud.
Code : Sélectionner tout - Visualiser dans une fenêtre à part getNodeValue();
Tu as mélangé un document JDOM et un document DOM...
Ton "constructeur" est prévu pour créer un org.w3c.dom.Document.
Si tu veux utiliser DOM, supprime les import de classes JDOM.
Vous avez un bloqueur de publicités installé.
Le Club Developpez.com n'affiche que des publicités IT, discrètes et non intrusives.
Afin que nous puissions continuer à vous fournir gratuitement du contenu de qualité, merci de nous soutenir en désactivant votre bloqueur de publicités sur Developpez.com.
Partager