Bonjour à tous !
Bon, je préviens direct, le developpement java n'est pas vraiment ma partie (mon boulot étant davantage axé sur le dev actionscript/php) mais pour les besoins de la cause j'essaie de m'y mettre... (surtout un projet urgent...)
Bref... mon but est de réaliser (ne vous inquiétez pas ma question ne porte pas là dessus) un serveur de Socket multiThread en java, destiné à une interaction avec flash...
Je compte réaliser les envois de données entre l'API actionScript et le serveur au moyen de flux au format XML...
Mon problème est le suivant :
J'ai bien réussi (gràce à des tutos) à lire un fichier xml (cf code simplifié ci joint) mais comment adapter celà pour qu'il me "parse" non pas un fichier mais un flux xml (au format String donc...)
Merci d'avance à tous et à toutes !
-> si vous avez besoin de précisions supplémentaires n'hésitez pas !
AfficherElement.java
Analyse.java
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12 import org.xml.sax.helpers.DefaultHandler; import org.xml.sax.Attributes; public class AfficherElement extends DefaultHandler{ //appelée à chaque balise ouvrante rencontrée //Attributes : les attributs de la balise ouvrante //autres paramètres : nom de l'élément public void startElement(String namespaceURI, String localName, String qName, Attributes atts){ System.out.println(qName); } }
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 javax.xml.parsers.SAXParserFactory; import javax.xml.parsers.SAXParser; import org.xml.sax.SAXException; import java.io.IOException; import java.io.File; public class Analyse{ //**CONSTRUCTEUR public static void main(String[] args){ //si le nom de fichier n'a pas été passé en paramètre if (args.length!=1){ System.err.println("usage: AnalyseDeBase xmlfile"); System.exit(1); } try{ //création de l'usine SAXParserFactory factory=SAXParserFactory.newInstance(); factory.setNamespaceAware(true); factory.setValidating(false); //création de l'analyseur SAXParser parser=factory.newSAXParser(); //ContentHandler - instanciation de la classe PrintElement PrintElement handler=new PrintElement(); //analyse du document try{ parser.parse(new File(args[0]),handler); }catch(SAXException se){ se.printStackTrace(); } }catch(Exception e){ System.err.println(e); } } }
Partager