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 :

heure locale en heure d'un autre pays


Sujet :

C

  1. #1
    Membre éclairé
    Homme Profil pro
    Responsable d'une MOE bancaire
    Inscrit en
    Juillet 2003
    Messages
    261
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Responsable d'une MOE bancaire

    Informations forums :
    Inscription : Juillet 2003
    Messages : 261
    Par défaut heure locale en heure d'un autre pays
    Bonjour,

    est ce que vous savez comment je peux faire pour transformer l'heure locale en heure d'un autre pays (bresil par exemple)?

    Merci d'avance

  2. #2
    Membre éclairé
    Homme Profil pro
    Responsable d'une MOE bancaire
    Inscrit en
    Juillet 2003
    Messages
    261
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Responsable d'une MOE bancaire

    Informations forums :
    Inscription : Juillet 2003
    Messages : 261
    Par défaut
    je crois que ma question n'a pas été tres claire : en fait je cherche à transformer une date/heure créée sous un time zone à une date/heure d'un autre time zone

    si vous avez meme un debur de piste, n'hesitez pas

    merci encore

  3. #3
    Expert confirmé
    Avatar de Thierry Chappuis
    Homme Profil pro
    Enseignant Chercheur
    Inscrit en
    Mai 2005
    Messages
    3 499
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 49
    Localisation : Suisse

    Informations professionnelles :
    Activité : Enseignant Chercheur
    Secteur : Industrie Pharmaceutique

    Informations forums :
    Inscription : Mai 2005
    Messages : 3 499
    Par défaut
    L'heure dans les différentes zones horaires ne diffèrent que d'un nombre entier d'heures, non? Je pense qu'il suffit de déterminer l'heure locale et d'ajouer/retrancher le nombres d'heures adéquates (c'est peut être un peu naïf, le problème heure d'été/hiver complique peut-être un peu l'algo).

    Thierry
    "The most important thing in the kitchen is the waste paper basket and it needs to be centrally located.", Donald Knuth
    "If the only tool you have is a hammer, every problem looks like a nail.", probably Abraham Maslow

    FAQ-Python FAQ-C FAQ-C++

    +

  4. #4
    Membre expérimenté
    Inscrit en
    Décembre 2003
    Messages
    272
    Détails du profil
    Informations forums :
    Inscription : Décembre 2003
    Messages : 272
    Par défaut
    Il y a quelques fuseaux horaires avec un décalage d'une demi heure. Par exemple, l'inde est à GMT + 5h30.

  5. #5
    Expert confirmé
    Avatar de Thierry Chappuis
    Homme Profil pro
    Enseignant Chercheur
    Inscrit en
    Mai 2005
    Messages
    3 499
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 49
    Localisation : Suisse

    Informations professionnelles :
    Activité : Enseignant Chercheur
    Secteur : Industrie Pharmaceutique

    Informations forums :
    Inscription : Mai 2005
    Messages : 3 499
    Par défaut
    Citation Envoyé par Ulmo
    Il y a quelques fuseaux horaires avec un décalage d'une demi heure. Par exemple, l'inde est à GMT + 5h30.
    Soit, merci pour la précision. Je crois que cela ne devrait pas trop compliquer l'algorithme.

    Thierry
    "The most important thing in the kitchen is the waste paper basket and it needs to be centrally located.", Donald Knuth
    "If the only tool you have is a hammer, every problem looks like a nail.", probably Abraham Maslow

    FAQ-Python FAQ-C FAQ-C++

    +

  6. #6
    Membre éclairé
    Homme Profil pro
    Responsable d'une MOE bancaire
    Inscrit en
    Juillet 2003
    Messages
    261
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Responsable d'une MOE bancaire

    Informations forums :
    Inscription : Juillet 2003
    Messages : 261
    Par défaut
    je ne crois pas que c'est aussi facile que ça!! en ajoutant le décalage, il peut y avoir un changement de jour, de mois et peut être de l'année.

    alors problème d'heure d'été/hiver (pour le pays local et distant), problème d'année bissextile ou pas??!! en plus, un pays comme le brésil a 4 fuseaux horaires différents!!

    j'imaginais l'existence d'une fonction qui ne retourne la date distante en lui passant comme paramètre la date locale avec le fuseau horaire local et distant. mais bon apparemment ça n'existe que dans mon imagination

  7. #7
    Membre expérimenté Avatar de Ksempac
    Inscrit en
    Février 2007
    Messages
    165
    Détails du profil
    Informations forums :
    Inscription : Février 2007
    Messages : 165
    Par défaut
    Déjà c'est pas la peine de t'énerver c'est pas comme ca que tu vas inciter les gens a t'aider.

    Sinon concernant ton probleme : Ce genre de fonctions, on peut en trouver en Java où le developpeur est en permanence guidé et encouragé a utiliser les classes deja presentes.
    Il faut bien comprendre que le C et le C++ n'ont pas la meme logique : ils te donnent les outils de base, et apres c'est a toi de te debrouiller. Ils ignorent meme la notion de date.

    Donc a moins que quelqu'un ait publié un code pour faire cela sur le net (voir google pour cela) tu devras faire cette fonction par toi-même.

    Detail supplementaire : je vois une erreur dans ton raisonnement : Un coup tu nous parles de pays/d'heures d'hiver/été (decision propre a chaque pays), et un coup tu nous parles de fuseau horaire. Il faudrait d'abord que tu decides si c'est le passage d'un fuseau a un autre, ou d'un pays/d'une partie d'un pays a un autre qui t'interesse.

  8. #8
    Expert confirmé

    Profil pro
    Inscrit en
    Janvier 2007
    Messages
    10 615
    Détails du profil
    Informations personnelles :
    Âge : 68
    Localisation : France

    Informations forums :
    Inscription : Janvier 2007
    Messages : 10 615
    Billets dans le blog
    2
    Par défaut
    non tu peux...

    Il faut utiliser les fonctions setenv, getenv, etc... qui te permettent de changer le timezone, et donc après de faire un appel à time ou mktime ou localtime.

    Il te faudra faire une petite fonction qui prend en paramètre le décalage (et/ou la zone), et ressortira la chaîne de la date (ou le temps GMT), et dedans sauvegardera le timezone local, changera le timezone, fera l'opération souhaitée, et remettra le timezone original.

    tu as un exemple en sens inverse (passage de tout temps en GMT) dans le code que j'ai posté ici


  9. #9
    Membre éclairé
    Homme Profil pro
    Responsable d'une MOE bancaire
    Inscrit en
    Juillet 2003
    Messages
    261
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Responsable d'une MOE bancaire

    Informations forums :
    Inscription : Juillet 2003
    Messages : 261
    Par défaut
    déjà je m'énerve jamais quand je développe, j'étais tout simplement entrain d'exprimer la complexité de l'algorithme (à mon avis, peut être que je me trompe) pour les gents qui essayent vraiment de m'aider !!

    ensuite, sans rentrer dans les détails des fuseaux horaires et tout ce bazard, la question est toute bête : 23h17min26s un 27/02/2001 au brésil correspond à quelle date/heure en france? ou la date/heure actuelle en france correspond à quoi aux usa?

    sincèrement je m’en fou complètement si je trouve une solution à ce problème maintenant, je continuerai à chercher juste pour savoir si c’est possible en C (la science mon cher ami, la science), et si c’est pas le cas, qui sait peut être qu’un jour j’aurai le temps de développer cet algorithme et le proposer ensuite à tout le monde

    EDIT : j'ai ecris mon message avant de voir celui de souviron34. Ok merci bcp je vais chercher de ce coté

  10. #10
    Membre expérimenté
    Inscrit en
    Décembre 2003
    Messages
    272
    Détails du profil
    Informations forums :
    Inscription : Décembre 2003
    Messages : 272
    Par défaut
    C'est évidemment possible en C, mais il faut être plus précis que "au Brésil" ou "aux USA".

    Citation Envoyé par SegmentationFault
    je ne crois pas que c'est aussi facile que ça!! en ajoutant le décalage, il peut y avoir un changement de jour, de mois et peut être de l'année.
    Ce n'est quand même pas compliqué d'ajouter le décalage horaire, puis de corriger la date si on déborde de la plage 0-23h.

  11. #11
    Expert confirmé

    Profil pro
    Inscrit en
    Janvier 2007
    Messages
    10 615
    Détails du profil
    Informations personnelles :
    Âge : 68
    Localisation : France

    Informations forums :
    Inscription : Janvier 2007
    Messages : 10 615
    Billets dans le blog
    2
    Par défaut
    et je rajouterais même en soutien à Ulmo que bêtement le time_t dans C comptent les secondes depuis le 01/01/1970, et que donc rajouter N heures et reconvertir est extrêmement simple...

    Regarde ton manuel de C, SegmentationFault.

  12. #12
    Membre éclairé
    Homme Profil pro
    Responsable d'une MOE bancaire
    Inscrit en
    Juillet 2003
    Messages
    261
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Responsable d'une MOE bancaire

    Informations forums :
    Inscription : Juillet 2003
    Messages : 261
    Par défaut
    ok je m'arrete la, j'ai pas trop detaillé tout ce que je voulais mais j'ai un bon debut de piste grace à vous

    merci à vous tous

  13. #13
    Membre émérite

    Profil pro
    Inscrit en
    Août 2003
    Messages
    878
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2003
    Messages : 878

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

Discussions similaires

  1. Conversion heure GMT en heure locale
    Par audrey1912 dans le forum Général JavaScript
    Réponses: 1
    Dernier message: 06/09/2012, 12h57
  2. Réponses: 4
    Dernier message: 05/05/2011, 14h24
  3. Fonction pour Conversion heure GMT en heure locale
    Par fifou89 dans le forum Langage
    Réponses: 3
    Dernier message: 09/06/2010, 11h07
  4. [Toutes versions] Heure UTC vers heure locale
    Par Morveus dans le forum Excel
    Réponses: 1
    Dernier message: 28/07/2009, 09h50
  5. [Dates] Conversion heure GMT vers heure local
    Par ggjedi dans le forum Langage
    Réponses: 3
    Dernier message: 19/10/2006, 10h17

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