IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Android Discussion :

Créer un calendrier depuis un fichier XML


Sujet :

Android

  1. #1
    Candidat au Club
    Profil pro
    Inscrit en
    Octobre 2011
    Messages
    6
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2011
    Messages : 6
    Points : 2
    Points
    2
    Par défaut Créer un calendrier depuis un fichier XML
    Bonjour à tous !

    Je suis débutant en Java et je développe actuellement une application Android qui aura besoin de gérer les vacances et jours fériés (défini dans un fichier xml).

    L'application ne devra PAS afficher de calendrier, en revanche, j'aurai besoin de savoir si le jour actuel (quand l'utilisateur se sert de l'appli) est un jour férié, de vacances ou "normal".

    Je sais gérer les jours (lundi, mardi, mercredi...) puisqu'on peut savoir cela à partir de Calendar (ex : Calendar.MONDAY).
    Mais je ne vois absolument pas comment gérer les jours fériés et vacances. Raison pour laquelle, je suis ici ! ^^

    Alors, pouvez-vous m'indiquer la marche à suivre pour "intégrer" les données xml dans un objet Calendar (ou GregorianCalendar ?)

    Autre solution, je suis preneur

    Merci !

  2. #2
    Modérateur
    Avatar de Hizin
    Homme Profil pro
    Développeur mobile
    Inscrit en
    Février 2010
    Messages
    2 180
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 35
    Localisation : France

    Informations professionnelles :
    Activité : Développeur mobile

    Informations forums :
    Inscription : Février 2010
    Messages : 2 180
    Points : 5 072
    Points
    5 072
    Par défaut
    Déjà, quand tu parles de vacances, tu veux parler de quelles vacances ?
    Vacances scolaires ? Si oui, en zone A, B, C ? Paramétrable ?
    Si non, des congés que l'on posent ?
    Autre : des vacances scolaire non-française ?

    Dépendant de la réponse, je verrai quelques moyens de le faire, plus ou moins bien.
    C'est Android, PAS Androïd, ou Androïde didiou !
    Le premier est un OS, le second est la mauvaise orthographe du troisième, un mot français désignant un robot à forme humaine.

    Membre du comité contre la phrase "ça marche PAS" en titre et/ou explication de problème.

    N'oubliez pas de consulter les FAQ Android et les cours et tutoriels Android

  3. #3
    Candidat au Club
    Profil pro
    Inscrit en
    Octobre 2011
    Messages
    6
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2011
    Messages : 6
    Points : 2
    Points
    2
    Par défaut
    Il s'agit de vacances scolaires qui peut être de zone A, B ou C mais pas les trois à la fois évidemment.
    Très simplement, je récupère les récupère depuis cette adresse : http://telechargement.index-education.com/vacances.xml
    Et je vire ce qui est inutile pour moi dans ce fichier.
    Puis je rajoute les jours fériés français à la main. Et il n'y a pas de jours de congés à traiter.


    Une solution ?

    Merci pour ton intérêt.

  4. #4
    Modérateur
    Avatar de Hizin
    Homme Profil pro
    Développeur mobile
    Inscrit en
    Février 2010
    Messages
    2 180
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 35
    Localisation : France

    Informations professionnelles :
    Activité : Développeur mobile

    Informations forums :
    Inscription : Février 2010
    Messages : 2 180
    Points : 5 072
    Points
    5 072
    Par défaut
    Vu le fichier que tu as en entré, je dirai :
    -repère le jour actuel
    -prends la balise "vacances" qui englobe cette date (si elle existe)
    -si tu n'as rien trouvé (ou si tu as trouvé quelque chose mais que tu veux savoir jour férié ET vacance), cherche une balise férié correspondante
    -si tu as trouvé quelque chose, tu es en vacance/jour férié, sinon non.

    Ce n'est que du parcours XML on pourrait dire, trouver le noeud qui va bien en somme.
    C'est Android, PAS Androïd, ou Androïde didiou !
    Le premier est un OS, le second est la mauvaise orthographe du troisième, un mot français désignant un robot à forme humaine.

    Membre du comité contre la phrase "ça marche PAS" en titre et/ou explication de problème.

    N'oubliez pas de consulter les FAQ Android et les cours et tutoriels Android

  5. #5
    Candidat au Club
    Profil pro
    Inscrit en
    Octobre 2011
    Messages
    6
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2011
    Messages : 6
    Points : 2
    Points
    2
    Par défaut
    Citation Envoyé par Hizin Voir le message
    Vu le fichier que tu as en entré, je dirai :
    -repère le jour actuel
    -prends la balise "vacances" qui englobe cette date (si elle existe)
    -si tu n'as rien trouvé (ou si tu as trouvé quelque chose mais que tu veux savoir jour férié ET vacance), cherche une balise férié correspondante
    -si tu as trouvé quelque chose, tu es en vacance/jour férié, sinon non.

    Ce n'est que du parcours XML on pourrait dire, trouver le noeud qui va bien en somme.
    Haha ! Voilà, il me fallait ces mots clés : "parcours XML" car je ne savaispas comment m'y prendre.
    J'ai pu trouver des tutos de parsing XML sous Android

    Meci beaucoup, je vais voir ce que j'arrive à faire...

  6. #6
    Modérateur
    Avatar de grunk
    Homme Profil pro
    Lead dév - Architecte
    Inscrit en
    Août 2003
    Messages
    6 691
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : France, Côte d'Or (Bourgogne)

    Informations professionnelles :
    Activité : Lead dév - Architecte
    Secteur : Industrie

    Informations forums :
    Inscription : Août 2003
    Messages : 6 691
    Points : 20 222
    Points
    20 222
    Par défaut
    Pour les jours férié j'aurais tendance à les rentrer en dur dans l'appli ou dans un fichier xml séparé.
    Les dates de vacances change constamment donc tu devra mettre à jour ton xml. Les jours férié sont fixes ou calculable.
    Pry Framework php5 | N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java

  7. #7
    Candidat au Club
    Profil pro
    Inscrit en
    Octobre 2011
    Messages
    6
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2011
    Messages : 6
    Points : 2
    Points
    2
    Par défaut
    Citation Envoyé par grunk Voir le message
    Pour les jours férié j'aurais tendance à les rentrer en dur dans l'appli ou dans un fichier xml séparé.
    Les dates de vacances change constamment donc tu devra mettre à jour ton xml. Les jours férié sont fixes ou calculable.
    Exact, cela semble plus judicieux, merci.

  8. #8
    Candidat au Club
    Profil pro
    Inscrit en
    Octobre 2011
    Messages
    6
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2011
    Messages : 6
    Points : 2
    Points
    2
    Par défaut
    Re !

    J'y arrive pas >_<


    J'obtiens une exception du type : Resources$NotFoundException

    Pourtant mon fichier vacances.xml est bien dans res/raw/
    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
     
    public class ProviderXml {
     
    	public static ArrayList<Periode> getPeriodes (Context context) {
    		XmlResourceParser parser = context.getResources().getXml(R.raw.vacances);
    		ArrayList<Periode> periodes = new ArrayList<Periode>();
    		int eventType = 0;
     
    		try {
    			eventType = parser.getEventType();
    			parser.next();
    		} catch (XmlPullParserException e) {
    			e.printStackTrace();
    		} catch (IOException e) {
    			e.printStackTrace();
    		}
     
    		while (eventType != XmlPullParser.END_DOCUMENT)
    		{
    			if(eventType == XmlPullParser.START_TAG)
    			{
    				periodes.add(new Periode(parser.getAttributeName(0), parser.getAttributeName(1)));
    			}
     
    			try {
    				eventType = parser.next();
    			} catch (XmlPullParserException e) {
    				e.printStackTrace();
    			} catch (IOException e) {
    				e.printStackTrace();
    			}
    		}
     
    		return periodes;
    	}
    }
    Vous avez une idée ?

  9. #9
    Expert éminent

    Avatar de Feanorin
    Profil pro
    Inscrit en
    Avril 2004
    Messages
    4 589
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2004
    Messages : 4 589
    Points : 9 149
    Points
    9 149
    Par défaut
    Bonjour,
    J'obtiens une exception du type : Resources$NotFoundException
    Regardes, si tu as bien ton identifiant déclaré dans le fichier R.java.
    S'il n'y est pas un clean de ton projet s'impose .
    Responsable Android de Developpez.com (Twitter et Facebook)
    Besoin d"un article/tutoriel/cours sur Android, consulter la page cours
    N'hésitez pas à consulter la FAQ Android et à poser vos questions sur les forums d'entraide mobile d'Android.

  10. #10
    Candidat au Club
    Profil pro
    Inscrit en
    Octobre 2011
    Messages
    6
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2011
    Messages : 6
    Points : 2
    Points
    2
    Par défaut
    Citation Envoyé par Feanorin Voir le message
    Bonjour,


    Regardes, si tu as bien ton identifiant déclaré dans le fichier R.java.
    S'il n'y est pas un clean de ton projet s'impose .
    Oui, merci mais en fait, il fallait le mettre dans le dossier xml et non raw

    Problème résolu

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Intégre des données depuis un fichier xml
    Par KATE6447 dans le forum InfoPath
    Réponses: 5
    Dernier message: 20/03/2008, 13h32
  2. Cast "dynamique" depuis un fichier xml
    Par Arno83 dans le forum Langage
    Réponses: 2
    Dernier message: 26/02/2008, 18h56
  3. Generateur de Forms depuis un fichier Xml..Style XAML
    Par sacofan dans le forum VB 6 et antérieur
    Réponses: 4
    Dernier message: 27/11/2006, 16h10
  4. [Image] charger une image depuis un fichier xml.
    Par Invité dans le forum AWT/Swing
    Réponses: 4
    Dernier message: 21/11/2006, 14h59

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo