[Lazarus-es] Hora de verano en España con PascalTZ
Juan M. Puertas
soft.sirius en gmail.com
Jue Dic 18 17:19:05 CET 2014
Hola Jose, encantado de saludarte.
En realidad sucede con cualquier fecha en la que exista una hora de verano
en España. Sea horario de invierno o de verano, siempre devuelve una hora
de diferencia respecto a GMT, cuando en verano debería devolver dos horas.
Aquí está el código que utilizo:
function dameHuso(yy,mm,dd,ho,mi,ss:word;zona:string):single;
// Devuelve el Huso Horario en horas
var
ptz :TPascalTZ;
s: string;
t,nt: TDateTime;
ms:Word;
begin
//Now = Tiempo transcurrido desde 1 Enero 1900
ptz := TPascalTZ.Create();
ptz.ParseDatabaseFromFile('tzdatabase/africa');
ptz.ParseDatabaseFromFile('tzdatabase/antarctica');
ptz.ParseDatabaseFromFile('tzdatabase/asia');
ptz.ParseDatabaseFromFile('tzdatabase/australasia');
ptz.ParseDatabaseFromFile('tzdatabase/etcetera');
ptz.ParseDatabaseFromFile('tzdatabase/europe');
ptz.ParseDatabaseFromFile('tzdatabase/northamerica');
ptz.ParseDatabaseFromFile('tzdatabase/pacificnew');
ptz.ParseDatabaseFromFile('tzdatabase/southamerica');
ms:=0;
t:=EncodeDate(yy,mm,dd) + EnCodeTime(ho,mi,ss,ms);
nt:=ptz.LocalTimeToGMT(t,zona);
ptz.free;
dameHuso:=(nt-t)*24.0;
end;
El 18 de diciembre de 2014, 16:44, José Mejuto <joshyfun en gmail.com>
escribió:
>
> El 18/12/2014 a las 12:03, Juan M. Puertas escribió:
>
> Hola amigos.
>> Estoy desarrollando un programa que utiliza cambios de hora históricos
>> para todo el mundo.
>> Estoy muy agradecido a José Mejuto por su trabajo con PascalTZ.
>> He seguido las instrucciones para acceder a los cambios de hora y todo
>> parecía funcionar bien, hasta que me he encontrado con que no funciona
>> con la hora de verano en España. El programa me devuelve -1 en lugar de
>> -2. Esto me pasa tanto en Linux Mint como en Windows.
>> ¿Os pasa a vosotros lo mismo?.
>> Muchas gracias por vuestra respuesta.
>>
>
> Hola,
>
> Puedes poner la fecha de la que quieres hacer la conversión ?
>
> Quiero decir, supongo que quieres hacer un cambio de hora/fecha, puedes
> poner el cambio a realizar ? Si puedes pegar el trozo de código referente
> sería genial, o un mini programa que pueda usar de test.
>
>
> --
>
>
> _______________________________________________
> Lazarus-es mailing list
> Lazarus-es en lists.lazarus.freepascal.org
> http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus-es
>
--
*Nota: Por problemas con el e-mail. Puede que recibas de nuevo este mensaje
en un tiempo.*
------------ próxima parte ------------
Se ha borrado un adjunto en formato HTML...
URL: <http://lists.lazarus-ide.org/pipermail/lazarus-es/attachments/20141218/cc5bf0a2/attachment-0002.html>
More information about the Lazarus-es
mailing list