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 :

Récupérer date et heure


Sujet :

Android

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Inscrit en
    Août 2005
    Messages
    34
    Détails du profil
    Informations forums :
    Inscription : Août 2005
    Messages : 34
    Par défaut Récupérer date et heure
    Salut,
    question de débutant vue et revue, je tente de récupérer la date et l'heure à l'instant t mais je bloque.

    Autre question, possible de récupérer une autre date et heure que celle "système"?

    Merci d'avance

  2. #2
    Expert confirmé

    Homme Profil pro
    Ingénieur systèmes et réseaux
    Inscrit en
    Février 2007
    Messages
    4 253
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Ingénieur systèmes et réseaux
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Février 2007
    Messages : 4 253
    Billets dans le blog
    3
    Par défaut
    Il faut différencier "date & heure" et un "timestamp", ouais je sais c'est pas très glamour comme différence et ça fait un peu pédant, mais il y a une différence...

    La première dépend de la locale (style de calendrier) et de la time-zone, pas la seconde.

    Pour le "timestamp" (date absolue, partout la même pour tout le monde) c'est simple:
    Il est possible d'obtenir une Date à partir de n'importe quelle autre valeur grâce à :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    long longValue = xxxxx;
    Date d = new Date(longValue);
    la valeur doit être le nombre de millisecondes écoulées depuis le 1er Janvier 1970 à 00:00:00.000 GMT
    C'est d'ailleurs cette valeur qui est retourné par System.currentTimeMillis()

    Pour la "Date & Heure", il faut passer par un objet de type "Calendar":
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Calendar c = Calendar.getInstance();
    Retournera donc la date calendaire actuelle, dans la locale par défaut, et la time-zone par défaut.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Calendar c = Calendar.getInstance(locale);
    La même chose pour une locale spécifiée..
    L'implémentation de Calendar dépendra du style de calendrier (Grégorien, Lunaire, ...).
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    Calendar c = Calendar.getInstance(locale);
    c.setTimeZone(TimeZone.getInstance("PST"));
    Permet de passer le calendrier sur une "autre" time-zone.

    Pour modifier la "date absolue" d'une date calendaire, il faut utiliser setTime:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    Date date = xxxx;
    Calendar c = Calendar.getInstance();
    c.setTime(date);
    Oui je sais le nom des fonctions est hyper mal choisi, mais ça remonte à Java 1 cette histoire.

  3. #3
    Membre averti
    Inscrit en
    Août 2005
    Messages
    34
    Détails du profil
    Informations forums :
    Inscription : Août 2005
    Messages : 34
    Par défaut
    Merci merci, mais j'ai quelque chose d'étrange :
    je fais
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    Calendar c = Calendar.getInstance();
    Heure1 = (TextView)this.findViewById(R.id.Heure);
    heure = Calendar.HOUR_OF_DAY;
    Heure1.setText("H : "+heure);
    Et j'ai quelque chose d'incohérent qui aparrait toujours à la même valeur.

    Une idée?

  4. #4
    Membre chevronné
    Homme Profil pro
    Ed Nat
    Inscrit en
    Janvier 2013
    Messages
    325
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Calvados (Basse Normandie)

    Informations professionnelles :
    Activité : Ed Nat
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Janvier 2013
    Messages : 325
    Par défaut
    Bonjour,
    oui, pour soulager nicroman qui en a beaucoup dit,
    Calendar.HOUR_OF_DAY ne retourne pas l'heure du jour, mais c'est une constante (c'est pour ça qu'elle est en MAJUSCULES) qui permet d'indiquer ce que tu veux obtenir de ton instance de Calendar, via la méthode sa méthode get :

    si tu veux l'heure (sur 24h) :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    Calendar c = Calendar.getInstance();
    int hh=c.get(Calendar.HOUR_OF_DAY);
    Et tu peux en obtenir des infos avec le get :
    http://docs.oracle.com/javase/7/docs...ar.HOUR_OF_DAY

Discussions similaires

  1. récupérer date et heure du jour
    Par Elise0251 dans le forum Général JavaScript
    Réponses: 3
    Dernier message: 24/06/2009, 14h52
  2. Récupérer date et heure de SYSDATE séparément
    Par susu39 dans le forum PL/SQL
    Réponses: 10
    Dernier message: 07/08/2008, 15h06
  3. récupérer date et heure d'une requête
    Par taffMan dans le forum Langage SQL
    Réponses: 2
    Dernier message: 08/02/2007, 13h55
  4. récupérer la date et heure système
    Par Rnx69 dans le forum Langage SQL
    Réponses: 3
    Dernier message: 01/06/2005, 15h43
  5. Réponses: 11
    Dernier message: 23/07/2002, 14h33

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