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

C Discussion :

localtime et heure d'été ...


Sujet :

C

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé Avatar de Marco85
    Profil pro
    Inscrit en
    Septembre 2005
    Messages
    210
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations forums :
    Inscription : Septembre 2005
    Messages : 210
    Par défaut localtime et heure d'été ...
    Bonjour à tous,

    J'essaie désespérément de convertir un temps en seconde depuis Epoch en une structure tm grâce à la fonction localtime. En fait, cela fonctionne sauf que j'ai décalage (je pense à cause de l'heure d'été) ... J'ai utilisé dans la structure tm qui reçoit l'heure le champ tm_isdst mais ça ne change rien.
    De plus, je souhaite que cette conversion soit valable toute l'année (en tenant compte automatiquement du changement d'heure).

    Quelqu'un peut-il m'aider ???

    Merci d'avance,

    Marco85

  2. #2
    Membre éprouvé
    Profil pro
    Inscrit en
    Août 2005
    Messages
    142
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2005
    Messages : 142
    Par défaut
    Remplace l'appel de localtime() par gmtime()

  3. #3
    Membre confirmé Avatar de Marco85
    Profil pro
    Inscrit en
    Septembre 2005
    Messages
    210
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations forums :
    Inscription : Septembre 2005
    Messages : 210
    Par défaut
    Salut tomasha,

    Citation Envoyé par tomasha
    Remplace l'appel de localtime() par gmtime()
    gmtime() ne résout pas ce problème, il se passe strictement la même chose ... Si ils y a d'autres idées, je suis preneur !!!

    Marco85

  4. #4
    Expert éminent
    Avatar de Emmanuel Delahaye
    Profil pro
    Retraité
    Inscrit en
    Décembre 2003
    Messages
    14 512
    Détails du profil
    Informations personnelles :
    Âge : 68
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Retraité

    Informations forums :
    Inscription : Décembre 2003
    Messages : 14 512
    Par défaut Re: localtime et heure d'été ...
    Citation Envoyé par Marco85
    J'essaie désespérément de convertir un temps en seconde depuis Epoch en une structure tm grâce à la fonction localtime
    Comment a été défini ce temps en secondes ? Si il est décalé, c'est normal que la conversion le soit aussi...

    Donne un exemple de temps en secondes et de date attendue.

  5. #5
    Membre confirmé Avatar de Marco85
    Profil pro
    Inscrit en
    Septembre 2005
    Messages
    210
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations forums :
    Inscription : Septembre 2005
    Messages : 210
    Par défaut Re: localtime et heure d'été ...
    Emmanuel Delahaye,

    Citation Envoyé par Emmanuel Delahaye
    Donne un exemple de temps en secondes et de date attendue.
    Admettons que j'ai défini :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    time_t tmp_time_in_seconds;
    tmp_time_in_seconds = 1;
    struct tm* p_time_to_convert = gmtime (&tmp_time_in_seconds);
    Je m'attends à avoir p_time_to_convert->tm_hour égal à 0 puisqu'il s'agit de la date 1er Janvier 1970 00:00:01. Or je reçois p_time_to_convert->tm_hour égal à 1.

    Voilà, alors je ne comprends pas bien pourquoi ...
    Merci d'avance,

    Marco85

  6. #6
    Expert éminent
    Avatar de Emmanuel Delahaye
    Profil pro
    Retraité
    Inscrit en
    Décembre 2003
    Messages
    14 512
    Détails du profil
    Informations personnelles :
    Âge : 68
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Retraité

    Informations forums :
    Inscription : Décembre 2003
    Messages : 14 512
    Par défaut Re: localtime et heure d'été ...
    Citation Envoyé par Marco85
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    time_t tmp_time_in_seconds;
    tmp_time_in_seconds = 1;
    struct tm* p_time_to_convert = gmtime (&tmp_time_in_seconds);
    Je m'attends à avoir p_time_to_convert->tm_hour égal à 0 puisqu'il s'agit de la date 1er Janvier 1970 00:00:01. Or je reçois p_time_to_convert->tm_hour égal à 1.
    Je ne suis pas sûr que la valeur interne de la structure ait le sens que l'on croit...
    Voilà, alors je ne comprends pas bien pourquoi ...
    L'important est que la date affichée soit correcte (asctime() ou strftime()):
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
     
    #include <stdio.h>
    #include <time.h>
     
    int main (void)
    {
       time_t tmp_time_in_seconds;
       tmp_time_in_seconds = 1;
       struct tm *p_time_to_convert = gmtime (&tmp_time_in_seconds);
     
       puts (asctime (p_time_to_convert));
       return 0;
    }
    donne
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Thu Jan 01 00:00:01 1970
    Ce qui me parait correct.

Discussions similaires

  1. Heure UTC vers LocalTime
    Par Louis Griffont dans le forum Debian
    Réponses: 7
    Dernier message: 08/04/2008, 13h13
  2. [CR ?] Somme d'heure sous Crystal ?
    Par Peter PARKER dans le forum SAP Crystal Reports
    Réponses: 1
    Dernier message: 17/04/2003, 16h24
  3. [VBA-E] [Excel] Lancer une macro à une heure donnée
    Par Lysis dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 16/10/2002, 12h15
  4. [VB6] [Datareport] Heure d'impression ds pied de page
    Par oazar dans le forum VB 6 et antérieur
    Réponses: 3
    Dernier message: 03/10/2002, 10h11
  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