j'ai le temps suivant:Time Zone spécifique Dans boost :: posix_time :: ptime
2010-01-25 03:13:34.384 - GMT Time Zone
2010-01-25 11:13:34.384 - My Local
Je souhaite convertir en timestamp en ms. Cependant, depuis que je ne pouvez utiliser que la chaîne de l'heure locale de l'appelant « 2010-01-25 11: 13: 34,384 »
Si je le fais de cette façon:
// ts is "2010-01-25 11:13:34.384" (My Local)
boost::posix_time::ptime t(boost::posix_time::time_from_string(ts));
boost::posix_time::ptime end(boost::gregorian::date(1970,1,1));
boost::posix_time::time_duration dur = t - end;
// epoch is 1264418014384
// 2010-01-25 11:13:34.384 (GMT) -- But I want 2010-01-25 03:13:34.384
// 2010-01-25 19:13:34.384 (My Local) -- But I want 2010-01-25 11:13:34.384
long long epoch = dur.total_milliseconds();
Est-il possible de dire stimuler: : posix_time, que la chaîne ts qu'il reçoit appartient à Mon fuseau horaire local?
Puis-je savoir comment voulez-vous obtenir le fuseau horaire actuel? –
Vous le conservez dans la variable d'environnement TZ. –