www.digitalmars.com         C & C++   DMDScript  

digitalmars.D.learn - convert d_time to Date without timezone conversion?

reply David Finlayson <david.p.finlayson gmail.com> writes:
I want to read Unix time stamps from a file and convert them to a human
readable date. However, I want to leave them in UTC. Is there a D function that
just returns the d_time string AS-IS without the UTC -> local timezone
conversion?

for example:

d_time dtime = rndtol(unixtime * TicksPerSecond);  // convert Unix timestamp
char[] time = toTimeString(dtime); // WRONG! converts UTC to local time zone

I am not sure about the other string conversion functions like YearFromTime,
etc. but I suspect they are doing time zone conversions also.
Apr 20 2007
parent reply david <tazz gmx.at> writes:
David Finlayson schrieb:
 I want to read Unix time stamps from a file and convert them to a human
readable date. However, I want to leave them in UTC. Is there a D function that
just returns the d_time string AS-IS without the UTC -> local timezone
conversion?
 
 for example:
 
 d_time dtime = rndtol(unixtime * TicksPerSecond);  // convert Unix timestamp
 char[] time = toTimeString(dtime); // WRONG! converts UTC to local time zone
 
 I am not sure about the other string conversion functions like YearFromTime,
etc. but I suspect they are doing time zone conversions also.
 
 
char[] toUTCString(d_time t) ? (see in your local dmd\src\phobos\std\date.d that it adds no local offset) david
Apr 20 2007
parent David Finlayson <david.p.finlayson gmail.com> writes:
Thanks, I'll take another look. I was confused by the documentation and forgot
that I can peek under the hood.

David

david Wrote:

 David Finlayson schrieb:
 I want to read Unix time stamps from a file and convert them to a human
readable date. However, I want to leave them in UTC. Is there a D function that
just returns the d_time string AS-IS without the UTC -> local timezone
conversion?
 
 for example:
 
 d_time dtime = rndtol(unixtime * TicksPerSecond);  // convert Unix timestamp
 char[] time = toTimeString(dtime); // WRONG! converts UTC to local time zone
 
 I am not sure about the other string conversion functions like YearFromTime,
etc. but I suspect they are doing time zone conversions also.
 
 
char[] toUTCString(d_time t) ? (see in your local dmd\src\phobos\std\date.d that it adds no local offset) david
Apr 22 2007