FiveTech Support Forums

FiveWin / Harbour / xBase community
Board index FiveWin para Harbour/xHarbour TimeToSecs() y SecsToTime()
Posts: 44162
Joined: Thu Oct 06, 2005 05:47 PM
TimeToSecs() y SecsToTime()
Posted: Mon Nov 24, 2014 06:54 AM
No estoy seguro si estas funciones ya existen en alguna librería, de todas formas las he implementado. Puede ser que no funcionen bien en todas las circunstancias. Agradezco vuestras pruebas, gracias :-)

timesecs.prg
Code (fw): Select all Collapse
#include "FiveWin.ch"

//----------------------------------------------------------------------------//

function Main()

   MsgInfo( SecsToTime( TimeToSecs( "15:30:00" ) - TimeToSecs( "12:00:00" ) ) )

return nil

//----------------------------------------------------------------------------//

function TimeToSecs( cTime )

return Val( SubStr( cTime, 1, 2 ) ) * 3600 + ;
       Val( SubStr( cTime, 4, 2 ) ) * 60 + ;
       Val( SubStr( cTime, 7, 2 ) )

//----------------------------------------------------------------------------//

function SecsToTime( nTimeInSecs )

   local nHours := Int( nTimeInSecs / 3600 )
   local nMins  := Int( nTimeInSecs % 3600 / 60 )
   local nSecs  := Int( nTimeInSecs - ( nHours * 3600 ) - ( nMins * 60 ) )

return StrZero( nHours, 2 ) + ":" + StrZero( nMins, 2 ) + ":" + ;
       StrZero( nSecs, 2 ) 

//----------------------------------------------------------------------------//
regards, saludos

Antonio Linares
www.fivetechsoft.com
Posts: 1515
Joined: Thu Oct 30, 2008 02:37 PM
Re: TimeToSecs() y SecsToTime()
Posted: Mon Nov 24, 2014 08:09 AM

Antonio,

Al menos en xharbour existen con casi el mismo nombre TimeToSec() y SecToTime(). Obsérvese que no llevan la "s". Por otra parte, estas de xharbour permiten que el time lleve centesimas HH:MM:SS:ss opcionalmente.

Saludos

Posts: 44162
Joined: Thu Oct 06, 2005 05:47 PM
Re: TimeToSecs() y SecsToTime()
Posted: Mon Nov 24, 2014 09:09 AM
Paco,

gracias, no me sonaban. Parece que devuelven lo mismo :-)

Code (fw): Select all Collapse
function Main()

   MsgInfo( SecsToTime( TimeToSecs( "15:30:00" ) - TimeToSecs( "12:00:00" ) ) )

   MsgInfo( SecToTime( TimeToSec( "15:30:00" ) - TimeToSec( "12:00:00" ) ) )

return nil
regards, saludos

Antonio Linares
www.fivetechsoft.com

Continue the discussion