Date and time format question

Bob Sneidar bobsneidar at iotecdigital.com
Mon Jul 29 18:30:20 EDT 2024


Actually it’s possible in some whacko time zones to get a rounding error by dividing first so:

…
> put (tOffset *60 *60) /100 into tOffset
…

Bob S


> On Jul 29, 2024, at 3:14 PM, Bob Sneidar via use-livecode <use-livecode at lists.runrev.com> wrote:
> 
> Simpler than that: 
> 
> on mouseUp
>   put "Mon, 29 Jul 2024 15:49:52 -0400" into tDateTime
>   put word -1 of tDateTime into tOffset
>   -- delete last word of tDateTime
>   convert tDateTime to seconds
>   put (tOffset / 100) *60 *60 into tOffset
>   add tOffset to tDateTime
>   convert tDateTime to  long date and  long time
>   put tDateTime
> end mouseUp
> 
> Bob S
> 
> 
>> On Jul 29, 2024, at 3:02 PM, Paul Dupuis via use-livecode <use-livecode at lists.runrev.com> wrote:
>> 
>> dateItems does not contain the timezone offset, so you would need to get the timezone offset from the internet date (the only format I can find that has it) and the break the offset into minutes and hours and perform the math.
>> 
>> I haven't tested this code (yet), but I think the seconds is the way to go.
>> 
>> function refiXMLTimestamp
>>  -- Need to return the timestamp (current time) in UTC format, or YYYY-MM-DDTHH:MM:SSZ where Z is zulu or GMT
>>  local tTimestamp
>>  get the internet date -- Mon, 29 Jul 2024 16:49:52 -0400
>>  -- the day of the week followed by a comma, all other item delimited by a space
>>  -- the day of the month
>>  -- the three-letter abbreviation for the month name
>>  -- the four-digit year
>>  -- the time in 24-hour format, including seconds, delimited by colons
>>  -- the four-digit time zone relative to UTC (Greenwich) time
>>  set the itemDel to space
>>  put last item of it into tZoneOffset -- +/-hhmm
>>  set the itemDel to comma
>>  convert it to seconds
>>  -- the year
>>  -- the month number
>>  -- the day of the month
>>  -- the hour in 24-hour time
>>  -- the minute
>>  -- the second
>>  -- the numeric day of the week where Sunday is day 1, Monday is day 2, and so forth
>>  put    char -1 to -2 of tZoneOffset into tMinOffset
>>  delete char -1 to -2 of tZoneOffset
>>  put ((tZoneOffset*3600)+(tMinOffset*60)) into tSecOffset
>>  -- adjust time to zulu/gmt
>>  add tSecOffset to it
>>  convert it to dateItems
>>  -- Now convert to YYYY-MM-DDTHH:MM:SSZ where Z is zulu of GMT/UTC
>>  put format("%4u",item 1 of it) &"-"& format("%2u",item 2 of it) &"-"& format("%2u",item 3 of it)           into tTimestamp -- the date in new format
>>  put "T"& format(%2u",item 4 of it) &":"& format("%2u",item 5 of it) &":"& format("%2u",item 6 of it) &"Z" after tTimestamp -- the time in new format
>>  return tTimestamp
>> end refiXMLTimestamp
>> 
>> On 7/29/2024 5:37 PM, Bob Sneidar via use-livecode wrote:
>>> Convert it to dateitems, then back again.
>>> 
>>> Bob S
>>> 
>>> 
>>>> On Jul 29, 2024, at 2:09 PM, Paul Dupuis via use-livecode <use-livecode at lists.runrev.com> wrote:
>>>> 
>>>> Follow up question/request:
>>>> 
>>>> put the internet date into tTimestamp -- stores something like Mon, 29 Jul 2024 16:49:52 -0400, where the -0400 is the time zone offset
>>>> 
>>>> Anyone have some already written code to convert this to a time in GMT (i.e where the time zone offset is +0000, i.e. Mon, 29 Jul 2024 20:49:52 +0000)?
>>>> 
>>>> It is adding the offset to the hours and minutes, but you have to handle carry over, potentially adding or subtracting a day.
>>>> 
>>>> If the best approach converting to seconds and the doing the math and converting back? (I think this is the answer)
>>>> 
>>>> 
>>>> 
>>>> _______________________________________________
>>>> use-livecode mailing list
>>>> use-livecode at lists.runrev.com
>>>> Please visit this url to subscribe, unsubscribe and manage your subscription preferences:
>>>> http://lists.runrev.com/mailman/listinfo/use-livecode
>>> 
>>> _______________________________________________
>>> use-livecode mailing list
>>> use-livecode at lists.runrev.com
>>> Please visit this url to subscribe, unsubscribe and manage your subscription preferences:
>>> http://lists.runrev.com/mailman/listinfo/use-livecode
>> 
>> 
>> _______________________________________________
>> use-livecode mailing list
>> use-livecode at lists.runrev.com
>> Please visit this url to subscribe, unsubscribe and manage your subscription preferences:
>> http://lists.runrev.com/mailman/listinfo/use-livecode
> 
> 
> _______________________________________________
> use-livecode mailing list
> use-livecode at lists.runrev.com
> Please visit this url to subscribe, unsubscribe and manage your subscription preferences:
> http://lists.runrev.com/mailman/listinfo/use-livecode



More information about the use-livecode mailing list