J'utilise VC en C et je dois faire une application avec des dates
manipulées, mais j'ai du mal, car les horaires sont sauvés avec des
décalages suivant si local, GMT, heure d'été etc etc...
Bref je suis totalement perdu, une date sauvée ne revient plus pareil si
on la manipule donc, s'il vous plait, connaissez-vous un moye, un tutorial
qui permette de mettre cela a plat et de garder des dates cohérentes d'une
fonction "time" a un autre ?
Je dois m'y prendre mal qq part, mais je ne sais plus...
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
Stephane Zuckerman
Bonjour,
On Mon, 18 Apr 2005, Mark Koenig wrote:
Bref je suis totalement perdu, une date sauvée ne revient plus pareil si on la manipule donc, s'il vous plait, connaissez-vous un moye, un tutorial qui permette de mettre cela a plat et de garder des dates cohérentes d'une fonction "time" a un autre ?
Je ne comprends pas bien votre problème. à moins de me tromper lourdement, time() renvoie l'heure epoch. Il faut "juste" utiliser des bibliothèques externes (ou bien faire la vôtre) pour ensuite adapter la date à la localité considérée. La "seule" chose à faire est donc d'avoir une "autorité de temps" à qui se référer (oui, je pense à un serveur). Deux clients qui ont des horloges réglées différemments ne seront jamais d'accord sur les dates.
Maintenant, peut-être que j'ai mal compris la question...
-- "Je deteste les ordinateurs : ils font toujours ce que je dis, jamais ce que je veux !" "The obvious mathematical breakthrough would be development of an easy way to factor large prime numbers." (Bill Gates, The Road Ahead)
Bonjour,
On Mon, 18 Apr 2005, Mark Koenig wrote:
Bref je suis totalement perdu, une date sauvée ne revient plus pareil si
on la manipule donc, s'il vous plait, connaissez-vous un moye, un tutorial
qui permette de mettre cela a plat et de garder des dates cohérentes d'une
fonction "time" a un autre ?
Je ne comprends pas bien votre problème. à moins de me tromper lourdement,
time() renvoie l'heure epoch. Il faut "juste" utiliser des bibliothèques
externes (ou bien faire la vôtre) pour ensuite adapter la date à la
localité considérée. La "seule" chose à faire est donc d'avoir une
"autorité de temps" à qui se référer (oui, je pense à un serveur). Deux
clients qui ont des horloges réglées différemments ne seront jamais
d'accord sur les dates.
Maintenant, peut-être que j'ai mal compris la question...
--
"Je deteste les ordinateurs : ils font toujours ce que je dis, jamais ce
que je veux !"
"The obvious mathematical breakthrough would be development of an easy
way to factor large prime numbers." (Bill Gates, The Road Ahead)
Bref je suis totalement perdu, une date sauvée ne revient plus pareil si on la manipule donc, s'il vous plait, connaissez-vous un moye, un tutorial qui permette de mettre cela a plat et de garder des dates cohérentes d'une fonction "time" a un autre ?
Je ne comprends pas bien votre problème. à moins de me tromper lourdement, time() renvoie l'heure epoch. Il faut "juste" utiliser des bibliothèques externes (ou bien faire la vôtre) pour ensuite adapter la date à la localité considérée. La "seule" chose à faire est donc d'avoir une "autorité de temps" à qui se référer (oui, je pense à un serveur). Deux clients qui ont des horloges réglées différemments ne seront jamais d'accord sur les dates.
Maintenant, peut-être que j'ai mal compris la question...
-- "Je deteste les ordinateurs : ils font toujours ce que je dis, jamais ce que je veux !" "The obvious mathematical breakthrough would be development of an easy way to factor large prime numbers." (Bill Gates, The Road Ahead)
AG
Il est important de bien savoir faire la différence entre pointeurs et variables. Par exemple si vous déclarez t1 comme un time_t * au lieu d'un time_t, vous aurez des problèmes (des dates qui changent sans qu'on le leur demande), en plus des warnings à la compilation. Ceci dit, cela reste aisé à minupler, Par exemple :
/* converti en heure locale */ t = localtime(&t1);
/* formatte */ strftime(affichage,50,"%c",t);
/* affiche le temps */ printf("%sn",affichage);
/* effectue une manipulation (ajoute une heure) */ t->tm_hour++;
/* reformatte */ strftime(affichage,50,"%c",t);
/* re affiche */ printf(" Apres ajoute d'une heure : n%sn",affichage);
return 0; }
AG, amusé.
Il est important de bien savoir faire la différence entre pointeurs et
variables. Par exemple si vous déclarez t1 comme un time_t * au lieu
d'un time_t, vous aurez des problèmes (des dates qui changent sans qu'on
le leur demande), en plus des warnings à la compilation. Ceci dit, cela
reste aisé à minupler,
Par exemple :
Il est important de bien savoir faire la différence entre pointeurs et variables. Par exemple si vous déclarez t1 comme un time_t * au lieu d'un time_t, vous aurez des problèmes (des dates qui changent sans qu'on le leur demande), en plus des warnings à la compilation. Ceci dit, cela reste aisé à minupler, Par exemple :
/* converti en heure locale */ t = localtime(&t1);
/* formatte */ strftime(affichage,50,"%c",t);
/* affiche le temps */ printf("%sn",affichage);
/* effectue une manipulation (ajoute une heure) */ t->tm_hour++;
/* reformatte */ strftime(affichage,50,"%c",t);
/* re affiche */ printf(" Apres ajoute d'une heure : n%sn",affichage);
return 0; }
AG, amusé.
Emmanuel Delahaye
Mark Koenig wrote on 18/04/05 :
J'utilise VC en C et je dois faire une application avec des dates manipulées, mais j'ai du mal, car les horaires sont sauvés avec des décalages suivant si local, GMT, heure d'été etc etc...
Bref je suis totalement perdu, une date sauvée ne revient plus pareil si on la manipule donc, s'il vous plait, connaissez-vous un moye, un tutorial qui permette de mettre cela a plat et de garder des dates cohérentes d'une fonction "time" a un autre ?
En quoi est-ce une question sur le langage C ? C'est un problème de spécification et de conception, non ? Quel rapport avec un langage d'implantation, quelqu'il soit ?
-- Emmanuel The C-FAQ: http://www.eskimo.com/~scs/C-faq/faq.html The C-library: http://www.dinkumware.com/refxc.html
"There are 10 types of people in the world today; those that understand binary, and those that dont."
Mark Koenig wrote on 18/04/05 :
J'utilise VC en C et je dois faire une application avec des dates
manipulées, mais j'ai du mal, car les horaires sont sauvés avec des
décalages suivant si local, GMT, heure d'été etc etc...
Bref je suis totalement perdu, une date sauvée ne revient plus pareil si
on la manipule donc, s'il vous plait, connaissez-vous un moye, un tutorial
qui permette de mettre cela a plat et de garder des dates cohérentes d'une
fonction "time" a un autre ?
En quoi est-ce une question sur le langage C ? C'est un problème de
spécification et de conception, non ? Quel rapport avec un langage
d'implantation, quelqu'il soit ?
--
Emmanuel
The C-FAQ: http://www.eskimo.com/~scs/C-faq/faq.html
The C-library: http://www.dinkumware.com/refxc.html
"There are 10 types of people in the world today;
those that understand binary, and those that dont."
J'utilise VC en C et je dois faire une application avec des dates manipulées, mais j'ai du mal, car les horaires sont sauvés avec des décalages suivant si local, GMT, heure d'été etc etc...
Bref je suis totalement perdu, une date sauvée ne revient plus pareil si on la manipule donc, s'il vous plait, connaissez-vous un moye, un tutorial qui permette de mettre cela a plat et de garder des dates cohérentes d'une fonction "time" a un autre ?
En quoi est-ce une question sur le langage C ? C'est un problème de spécification et de conception, non ? Quel rapport avec un langage d'implantation, quelqu'il soit ?
-- Emmanuel The C-FAQ: http://www.eskimo.com/~scs/C-faq/faq.html The C-library: http://www.dinkumware.com/refxc.html
"There are 10 types of people in the world today; those that understand binary, and those that dont."
Charlie Gordon
"Emmanuel Delahaye" wrote in message news:
Mark Koenig wrote on 18/04/05 :
J'utilise VC en C et je dois faire une application avec des dates manipulées, mais j'ai du mal, car les horaires sont sauvés avec des décalages suivant si local, GMT, heure d'été etc etc...
Bref je suis totalement perdu, une date sauvée ne revient plus pareil si on la manipule donc, s'il vous plait, connaissez-vous un moye, un tutorial qui permette de mettre cela a plat et de garder des dates cohérentes d'une fonction "time" a un autre ?
En quoi est-ce une question sur le langage C ? C'est un problème de spécification et de conception, non ? Quel rapport avec un langage d'implantation, quelqu'il soit ?
Mais si, c'est une question sur la librairie standard C : je traduis
"je ne comprends rien aux fonctions de manipulation des dates en C, en particulier en ce qui concerne les fuseaux horaires et autres subtilités saisonnières, pourriez vous me conseiller un tutorial sur ces questions ?"
Il faut bien reconnaitre que les fonctions de traitement des dates sont mal foutues, incohérentes, voire carrément absconses. De plus l'étendue supportée est insuffisante pour beaucoup d'applications réelles : je suis par exemple né avant l'origine ;-)
Mark Koenig devrait préciser un peu le contexte et le type de traitement qu'il fait pour qu'on le dirige sur la solution appropriée.
Chqrlie.
"Emmanuel Delahaye" <emdel@YOURBRAnoos.fr> wrote in message
news:mn.94a67d547a882fa8.15512@YOURBRAnoos.fr...
Mark Koenig wrote on 18/04/05 :
J'utilise VC en C et je dois faire une application avec des dates
manipulées, mais j'ai du mal, car les horaires sont sauvés avec des
décalages suivant si local, GMT, heure d'été etc etc...
Bref je suis totalement perdu, une date sauvée ne revient plus pareil si
on la manipule donc, s'il vous plait, connaissez-vous un moye, un tutorial
qui permette de mettre cela a plat et de garder des dates cohérentes d'une
fonction "time" a un autre ?
En quoi est-ce une question sur le langage C ? C'est un problème de
spécification et de conception, non ? Quel rapport avec un langage
d'implantation, quelqu'il soit ?
Mais si, c'est une question sur la librairie standard C : je traduis
"je ne comprends rien aux fonctions de manipulation des dates en C, en
particulier en ce qui concerne les fuseaux horaires et autres subtilités
saisonnières, pourriez vous me conseiller un tutorial sur ces questions ?"
Il faut bien reconnaitre que les fonctions de traitement des dates sont mal
foutues, incohérentes, voire carrément absconses.
De plus l'étendue supportée est insuffisante pour beaucoup d'applications
réelles : je suis par exemple né avant l'origine ;-)
Mark Koenig devrait préciser un peu le contexte et le type de traitement qu'il
fait pour qu'on le dirige sur la solution appropriée.
J'utilise VC en C et je dois faire une application avec des dates manipulées, mais j'ai du mal, car les horaires sont sauvés avec des décalages suivant si local, GMT, heure d'été etc etc...
Bref je suis totalement perdu, une date sauvée ne revient plus pareil si on la manipule donc, s'il vous plait, connaissez-vous un moye, un tutorial qui permette de mettre cela a plat et de garder des dates cohérentes d'une fonction "time" a un autre ?
En quoi est-ce une question sur le langage C ? C'est un problème de spécification et de conception, non ? Quel rapport avec un langage d'implantation, quelqu'il soit ?
Mais si, c'est une question sur la librairie standard C : je traduis
"je ne comprends rien aux fonctions de manipulation des dates en C, en particulier en ce qui concerne les fuseaux horaires et autres subtilités saisonnières, pourriez vous me conseiller un tutorial sur ces questions ?"
Il faut bien reconnaitre que les fonctions de traitement des dates sont mal foutues, incohérentes, voire carrément absconses. De plus l'étendue supportée est insuffisante pour beaucoup d'applications réelles : je suis par exemple né avant l'origine ;-)
Mark Koenig devrait préciser un peu le contexte et le type de traitement qu'il fait pour qu'on le dirige sur la solution appropriée.
Chqrlie.
Targeur fou
Mark Koenig wrote:
Bonjour,
Salut,
J'utilise VC en C et je dois faire une application avec des dates manipulées, mais j'ai du mal, car les horaires sont sauvés avec des
décalages suivant si local, GMT, heure d'été etc etc...
Si tu utilises les fonctions C standard il ne devrait pas y a voir de problème particulier. Tu as dans <time.h> le type arithmétique time_t et le type structure tm. Entre les fonctions time(), mktime() et gmtime() (ou localtime()) tu dois pouvoir t'en sortir si tu choisis une convention, comme tout exprimer en temps UTC ou en temps local àartir du momenet où tu as ta date sous forme de time_t. Il faudrait que tu exprimes plus clairement et si possible avec du code ton pb.
Regis
Mark Koenig wrote:
Bonjour,
Salut,
J'utilise VC en C et je dois faire une application avec des dates
manipulées, mais j'ai du mal, car les horaires sont sauvés avec des
décalages suivant si local, GMT, heure d'été etc etc...
Si tu utilises les fonctions C standard il ne devrait pas y a voir de
problème particulier. Tu as dans <time.h> le type arithmétique time_t
et le type structure tm. Entre les fonctions time(), mktime() et
gmtime() (ou localtime()) tu dois pouvoir t'en sortir si tu choisis une
convention, comme tout exprimer en temps UTC ou en temps local àartir
du momenet où tu as ta date sous forme de time_t. Il faudrait que tu
exprimes plus clairement et si possible avec du code ton pb.
J'utilise VC en C et je dois faire une application avec des dates manipulées, mais j'ai du mal, car les horaires sont sauvés avec des
décalages suivant si local, GMT, heure d'été etc etc...
Si tu utilises les fonctions C standard il ne devrait pas y a voir de problème particulier. Tu as dans <time.h> le type arithmétique time_t et le type structure tm. Entre les fonctions time(), mktime() et gmtime() (ou localtime()) tu dois pouvoir t'en sortir si tu choisis une convention, comme tout exprimer en temps UTC ou en temps local àartir du momenet où tu as ta date sous forme de time_t. Il faudrait que tu exprimes plus clairement et si possible avec du code ton pb.