Bonjour j'ai un petit soucis, je réussis à parser mon fichier xml mais il me manque des infos.
Voilà mon code :
Un bout de mon Xml :
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
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64 package Projet; import org.xml.sax.*; import org.xml.sax.helpers.DefaultHandler; import javax.xml.parsers.SAXParserFactory; import javax.xml.parsers.ParserConfigurationException; import javax.xml.parsers.SAXParser; //pour l'acces aux fichiers import java.io.*; public class AnalyseSAX extends DefaultHandler { //methode principale public static void main (String args[]) throws IOException { DefaultHandler handler = new AnalyseSAX(); SAXParserFactory factory = SAXParserFactory.newInstance(); try { SAXParser saxParser = factory.newSAXParser(); saxParser.parse( new File("C:/Documents and Settings/Sony/Bureau/Projet/test.xml"), handler ); } catch (Throwable t) { //Si on a une erreur pendant l'analyse t.printStackTrace (); System.exit (1); } System.exit (0); }//fin du main //Les methodes qui suivent sont appelées //automatiquement par l'analyseur //lorsqu'un événement est détecté //dans le fichier XML. public void error(SAXParseException e) throws SAXParseException{ throw e; } public void startDocument () throws SAXException { System.out.println("début du document"); } public void endDocument () throws SAXException { System.out.println("fin du document"); } public void startElement (String namespaceURI,String simpleName,String qualifiedName,Attributes attrs) throws SAXException { String nomElement = simpleName; if (nomElement.equals("")) nomElement = qualifiedName; System.out.println("startElement : "+ nomElement); } public void endElement (String namespaceURI,String simpleName,String qualifiedName) throws SAXException { String nomElement = simpleName; if (nomElement.equals("")){ nomElement = qualifiedName; } System.out.println("endElement : "+ nomElement); } public void characters (char buf [], int offset, int len) throws SAXException { String s = new String(buf, offset,len); System.out.println (s); } }//fin de la classe
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 <?xml version="1.0" encoding="UTF-8"?> <ysearchresponse xmlns="http://www.inktomi.com/" responsecode="200"> <nextpage><![CDATA[/ysearch/web/v1/chat%20chien?count=10&appid=XXX&format=xml&start=10]]></nextpage> <resultset_web count="10" start="0" totalhits="2832821" deephits="61100000"> <result> <abstract><![CDATA[Chienworks* <b>Chat</b>! - clean & friendly <b>chat</b> for the whole family. <b>...</b> How do you pronounce '<b>Chien</b>' Need to gripe? disgruntled masses.com. Help support our <b>chat</b>! <b>...</b>]]></abstract> <clickurl>http://lrd.yahooapis.com/_ylc=X3oDMTVnZzltazcxBF9TAzIwMjMxNTI3MDIEYXBwaWQDQmhySVpCTFYzNEdTNURpS2FMUW5mdWRWNG45RmQwUFduMWwuX2k5UjRHdE8uZTZCQXFGeXF4aGxOZEFXeEVadTFiYWVKMm8tBGNsaWVudANib3NzBHNlcnZpY2UDQk9TUwRzbGsDdGl0bGUEc3JjcHZpZANSazNCRzJLSWNyb0pFMnFUNTd6MmlzSm9Va0p5ZkVudDJqUUFBblJJ/SIG=10q97h9nt/**http%3A//chienchat.com/</clickurl> <date>2009/04/12</date> <dispurl><![CDATA[<b>chienchat.com</b>]]></dispurl> <size>16845</size> <title><![CDATA[Log in - Chienworks* <b>Chat</b>!]]></title> <url>http://chienchat.com/</url> </result> </resultset_web> </ysearchresponse>
Ce que j'obtiens :
et ce qui me manque c'est l'info qui se trouvait la : <resultset_web count="10" start="0" totalhits="2832821" deephits="61100000">
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
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61 run: début du document startElement : ysearchresponse startElement : nextpage /ysearch/web/v1/chat%20chien?count=10&appid=XXX format=xml&start=10 endElement : nextpage startElement : resultset_web startElement : result startElement : abstract Chienworks* <b>Chat</b>! - clean & friendly <b>chat</b> for the whole family. <b>...</b> How do you pronounce '<b>Chien</b>' Need to gripe? disgruntled masses.com. Help support our <b>chat</b>! <b>...</b> endElement : abstract startElement : clickurl http://lrd.yahooapis.com/_ylc=X3oDMTVnZzltazcxBF9TAzIwMjMxNTI3MDIEYXBwaWQDQmhySVpCTFYzNEdTNURpS2FMUW5mdWRWNG45RmQwUFduMWwuX2k5UjRHdE8uZTZCQXFGeXF4aGxOZEFXeEVadTFiYWVKMm8tBGNsaWVudANib3NzBHNlcnZpY2UDQk9TUwRzbGsDdGl0bGUEc3JjcHZpZANSazNCRzJLSWNyb0pFMnFUNTd6MmlzSm9Va0p5ZkVudDJqUUFBblJJ/SIG=10q97h9nt/**http%3A//chienchat.com/ endElement : clickurl startElement : date 2009/04/12 endElement : date startElement : dispurl <b>chienchat.com</b> endElement : dispurl startElement : size 16845 endElement : size startElement : title Log in - Chienworks* <b>Chat</b>! endElement : title startElement : url http://chienchat.com/ endElement : url endElement : result endElement : resultset_web endElement : ysearchresponse fin du document BUILD SUCCESSFUL (total time: 0 seconds)
Le problème étant que mon programme ne me renvoit que le nom et pas le reste...
Autre chose, la je le fais en interne mais j'aimerais qu'au lieu de donner le chemin d'accès sur mon PC, mettre seulement une URL directement.
Une idée ?
Je vous remercie d'avance !
Cordialement
Partager