Re: Decoding a date & time format

From: Jon Slaughter <Jon_Slaughter_at_Hotmail.com>
Date: Tue, 28 Oct 2008 08:15:20 -0600
Message-ID: <48FNk.5011$c45.3480@nlpi065.nbdc.sbc.com>

"Phil Carmody" <thefatphil_demunged_at_yahoo.co.uk> wrote in message news:87abcoesl0.fsf_at_nonospaz.fatphil.org...
> "Rob Nicholson" <rob.nicholson_at_nospan.com> writes:
>> Not sure if this is a good place to post, but we're trying to reverse
>> engineer an Oracle database which has two fields for date & time. They
>> don't
>> seem to be encoded using the standard Oracle date/time fields so we
>> suspect
>> the developer has used some bespoke encoding system.
>>
>> So I thought it would be a good challenge for somebody mathematically
>> minded.
>>
>> The example I currently have is:
>>
>> 17th October 2008 encoded as 131598865
>
> Hexadecimal: 0x07D80A11
> And:
> 07D8 = 2008
> 0A = 10
> 11 = 17
>
>> 13:54:49 encoded as 221655296
>
> Hexadecimal: 0x0D363100
> And:
> 0D = 13
> 36 = 54
> 31 = 49
>
>
> Phil

Which means it's simply byte byte word format.

i.e., day + month << 8 + year << 16

decoding is in reverse:

day = date & 0xFF;
month = date >> 8 & 0xFF
year = date >> 16 Received on Tue Oct 28 2008 - 09:15:20 CDT

Original text of this message