frAydjwe Posted May 11, 2011 Share Posted May 11, 2011 Bonjour, Je vois beaucoup du tutos qui expliquent comment lire un fichier XML grâce à une URL, mais pas beaucoup si je veux lire un fichier de mon projet android. Au moment de la délcaration du fichier j'ai ça : try { /** Handling XML */ SAXParserFactory spf = SAXParserFactory.newInstance(); SAXParser sp = spf.newSAXParser(); XMLReader xr = sp.getXMLReader(); /** Send URL to parse XML Tags */ URL sourceUrl = new URL( "http://www.androidpeople.com/wp-content/uploads/2010/06/example.xml"); /** Create handler to handle XML Tags ( extends DefaultHandler ) */ MyXMLHandler myXMLHandler = new MyXMLHandler(); xr.setContentHandler(myXMLHandler); xr.parse(new InputSource(sourceUrl.openStream())); } catch (Exception e) { System.out.println("XML Pasing Excpetion = " + e); } Voilà, ca marche, c'est cool mais c'est une URL, donc pas ce que je veux. J'ai essayé un truc du genre : /** Handling XML */ SAXParserFactory spf = SAXParserFactory.newInstance(); SAXParser sp = spf.newSAXParser(); XMLReader xr = sp.getXMLReader(); /** Send URL to parse XML Tags */ String file = "config.xml"; /** Create handler to handle XML Tags ( extends DefaultHandler ) */ MyXMLHandler myXMLHandler = new MyXMLHandler(); xr.setContentHandler(myXMLHandler); xr.parse(new InputSource(file)); } catch (Exception e) { System.out.println("XML Pasing Excpetion = " + e); } Mais bien sur, ca ne fonctionne pas. Est ce que vous pourriez m'aider à lire ce fichier xml s'il vout plait... ? MERCI ! Quote Link to comment Share on other sites More sharing options...
frAydjwe Posted May 11, 2011 Author Share Posted May 11, 2011 Je l'a refais de façon plus simple. Je veux accéder aux informations du fichier XML suivant : <?xml version="1.0"?> <ressources> <ip>192.168.1.2</ip> <port>11002</port> </ressources> Voilà tout bête. Rien de compliqué ... Je veux accéder à ce fichier ( se trouvant à la racine de MonProjetAndroid ) dans une Activity android et récupérer l'ip et le port dans deux variables voilà ... Les tutos que je trouve sur internet sont très biens pour lire un .xml dans une URL, mais alors pour le reste, on peut se brosser. :D Je vous remercie ! Quote Link to comment Share on other sites More sharing options...
Femto Posted May 20, 2011 Share Posted May 20, 2011 Je vais être un peu vague (je suis avec mon téléphone). Met ton fichier xml dans les ressources du projet ( créé un dossier raw à côté de tes autres ressources). Si je ne dit pas de bêtises ton parseur prend un inputstream en entré. Cherche comment créé un inputstream à partir des ressources locales. Ce n'est pas très précis mais j'essaye de te mettre sur la bonne voie. Bonne continuation :) Quote Link to comment Share on other sites More sharing options...
bibmanhjp Posted March 28, 2012 Share Posted March 28, 2012 bonjour, le sujet est un peux vieux mais je suis dans la même attente :) dit moi frAydjwe tu a trouver comment faire ? merci si tu pouvais me dire !! Quote Link to comment Share on other sites More sharing options...
chpil Posted March 28, 2012 Share Posted March 28, 2012 Pour parser un contenu XML, les parsers attendent en général en entrée un InputStream. Il te suffit d'avoir un InputStream pour lire ton fichier, et de fournir cet InputStream au parser; il n'y a pas de réelle différence que le contenu soit sur le Net, dans un fichier, ... ; au final, la lecture se résume à l'obtention d'un InputStream Donc, dans ton cas, où se situe le contenu XML que tu souhaites parser ? Quote Link to comment Share on other sites More sharing options...
niclas2400 Posted March 29, 2012 Share Posted March 29, 2012 Hello tu as pas meilleur temps de créer un fichier dans value <ressource> <String name="ip">192.168.1.2</String> <String name="port">192.168.1.2</String> </ressource> Quote Link to comment Share on other sites More sharing options...
nbbu Posted April 13, 2012 Share Posted April 13, 2012 bonjour, le sujet est un peux vieux mais je suis dans la même attente :) Comme le dit chpil, qu'importe la source pourvu que tu aies du InputStream. Donc si ton fichier se trouve dans tes assets tu fais : InputStream input = context.getAssets().open("test.xml"); parseur.parse(input, handler); Plus généralement si ton fichier a été créé dynamiquement via this.openFileOutput("test.xml"); Tu fais : InputStream input = this.openFileInput("test.xml"); parseur.parse(input, handler); Quote Link to comment Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.