Vous ne trouvez pas de réponse à votre problème ? Alors posez la question dans le forum. Souvenez-vous qu'il n'y a jamais de question bête, mais rester dans l'ignorance parce que l'on n'ose pas poser une question, ça c'est une erreur !

METEOREADER : COMMENT PARSER UN FLUX XML DE METEO


Information sur la source



Description

Cliquez pour voir la capture en taille normale
Il s'agit d'une petite source qui utilise les flux rss de weather.com pour afficher la météo des villes françaises (malheureusement, certaines ne sont pas disponibles sur le site !).

Cette source permet surtout de voir comment parser un fichier xml.

Pour pouvoir l'utiliser, il vous faut la librairie JDOM.

J'ai également dû supprimer quelques images pour que le zip passe, donc il est possible que certaines images ne s'affiche pas (nottament, les images pour le soir, ainsi que pour la neige).
 

Source

  • SAXBuilder parser = new SAXBuilder();
  • Document document;
  • try {
  • int index = 0;
  • document = parser.build(url);
  • Element oRacine = document.getRootElement();
  • for (Element element : (List<Element>) oRacine.getChild("dayf").getChildren("day")) {
  • CMeteoData data = new CMeteoData();
  • data.setTemperatureMax(new Double((5.0 / 9.0) * Double.parseDouble(element.getChildText("hi")) - (160.0 / 9.0)).intValue());
  • data.setTemperatureMin(new Double((5.0 / 9.0) * Double.parseDouble(element.getChildText("low")) - (160.0 / 9.0)).intValue());
  • data.setDay(++index);
  • data.setIcon(Integer.parseInt(element.getChild("part").getChildText("icon")));
  • _meteoDays.add(data);
  • }
  • }
  • catch (JDOMException e) {
  • e.printStackTrace();
  • }
  • catch (IOException e) {
  • e.printStackTrace();
  • }
                SAXBuilder parser = new SAXBuilder();
		Document document;
		try {
			int index = 0;
			document = parser.build(url);
			Element oRacine = document.getRootElement();
			for (Element element : (List<Element>) oRacine.getChild("dayf").getChildren("day")) {
				CMeteoData data = new CMeteoData();
				data.setTemperatureMax(new Double((5.0 / 9.0) * Double.parseDouble(element.getChildText("hi"))  - (160.0 / 9.0)).intValue());
				data.setTemperatureMin(new Double((5.0 / 9.0) * Double.parseDouble(element.getChildText("low"))  - (160.0 / 9.0)).intValue());
				data.setDay(++index);
				data.setIcon(Integer.parseInt(element.getChild("part").getChildText("icon")));
				_meteoDays.add(data);
			}
		}
		catch (JDOMException e) {
			e.printStackTrace();
		}
		catch (IOException e) {
			e.printStackTrace();
		}

Fichier Zip

Pour les "Membres Club", vous pouvez télécharger directement un fichier contenu dans le zip sans télécharger le zip en entier !

Télécharger le zip

Commentaires et avis

signaler à un administrateur
Commentaire de Ombitious_Developper le 14/04/2007 18:50:00

Salut: (10/10)

Comme d'habitude. (Code clair qui donne l'envie de le lire).

Juste une petite question comment as tu fais le lien avec le flux RSS?

Bonne continuation ...

signaler à un administrateur
Commentaire de DARKSIDIOUS le 14/04/2007 19:26:21 administrateur CS

càd ???

Pour récupèrer le lien ?

Il suffit d'aller sur le site weather.com, rechercher la ville que l'on veut, et regarder l'adresse et trouver la logique de l'adresse pour des villes différentes (en l'occurence, le regId de mon enumération des villes).

DarK Sidious

signaler à un administrateur
Commentaire de Ombitious_Developper le 14/04/2007 19:41:22

ok

signaler à un administrateur
Commentaire de Ombitious_Developper le 14/04/2007 19:43:58

Donc tu changes ce regId par le nom de la région concernée et tu ouvres une connection si je ne me trompes pas.

J'ai posée cette question parceque j'ignorait comment la source de données est "faite" si c'est possible de le dire.

signaler à un administrateur
Commentaire de DARKSIDIOUS le 14/04/2007 19:57:59 administrateur CS

En fait, pour chaque ville, l'URL est la même, sauf l'id de la ville dont on veut récupèrer les données météo.

=> à chaque fois que l'utilisateur modifie le combo, il faut refaire l'URL avec le bon id de ville, puis il faut télécharger le flux XML venant de weather.com afin de récupèrer les nouvelles données, et enfin afficher les nouvelles images.

Donc on peut dire en effet que la source de données est redéfinie à chaque nouvelle ville sélectionnée.

DarK Sidious

Ajouter un commentaire

Discussions en rapport avec ce code source dans le forum

SOAP / Webservice [ par Biggooch ] Bonjour, j'ai un probl&#232;me avec l'utilisation d'un webservice. Le webservice est &#233;crit en dotNET, et je dois r&#233;aliser une application ja XMl(RSS) [ par mimosa803 ] Bonsoir, j'ai un problème pour générer un fichier RSS à partir d'un fichier XML .J'utilise Jdom comme parseur XML pour manipuler le document XML . Bon de xml vers xsd [ par rihab85 ] Salut,Je veux créer un fichier xsd à partir du fichier xml  en java (JDeveloper ou NetBeans) et j'ai besoin d'aide.merci d'avance. Modifier un fichier depuis build.xml [ par NewJavaLearner ] Salut,j'ai besoin d'un bout de code que j'insère dans mon build.xml pour qu'il me modifie un fichier que je lui indique.Supposons que le fichier que j SQL to XML [ par plop3000 ] Bonjour,Je suis à la recherche d'une façon pour obtenir du xml à partir d'une requête SQL. J'explique : je voudrais à partir d'une requète comme celle Ajouter des données dans un fichier XML avec DOM [ par fonkyom ] j'ai ce code mais il ajoute rien, il remplace !merci de m'aidervoici mon xml[QUOTE]&lt;?xml version="1.0" encoding="ISO-8859-1"?&gt;&lt;!DOCTYPE éléme afficher les données d'un fichier xml dans page jsp [ par niko14 ] Bonjour tout le monde, voila mon problème, je suis toujors très débutant en jsp et je voudrais a partir d'un document xml, le parcourir et afficher da [XML] Saxparseexception détails [ par terminagroo ] Bonjour,Voilà j'ai un programme qui parse des fichiers xml et qui me renvoie une SaxParseExcetion, j'aimerais si c'ets possible récupérer l'élément qu J2EE [ par bassoumamallouka ] Je suis entreint de tester l'exemple du site http://wiki.eclipse.org/WTP_JEE5_Test_Scenarios mais avec oracle10g j'ai rencontrer des problèmes lors de


Nos sponsors

Sondage...

CalendriCode

Décembre 2008
LMMJVSD
1234567
891011121314
15161718192021
22232425262728
293031    

Consulter la suite du CalendriCode

Téléchargements

Logiciels à télécharger sur le même thème :



Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel BAÏSE, Merci à Vincent pour ses précieux conseils
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés
Temps d'éxécution de la page : 0,359 sec

Google Coop CodeS-SourceS Google Coop CodeS-SourceS


Certaines images présentes sur le site (notament certains avatars) sont issues des collections IconShock, donc si vous souhaitez utiliser ces icons vous devez les acheter, ne les copiez pas et ne utilisez pas dans vos sites et applications sans les avoir commandé.