comment fonctionne la fonction date ?

comment fonctionne la fonction date ? - Delphi/Pascal - Programmation

Marsh Posté le 22-05-2008 à 15:23:50    

bonjour,
 
j'utilise en ce moment cobian backup qui est programmé en delphi, donc j'essai de generer un fichier de configuration où la date est generé par du delphi par exemple voici le 01/01/2008 à 12:35:59  :
0100000011100011010000110001000011001100101101001000011100000100
 
comment est-ce delphi passe de l'un a l'autre?
 
merci d'avance   :jap:

Reply

Marsh Posté le 22-05-2008 à 15:23:50   

Reply

Marsh Posté le 30-05-2008 à 23:18:59    

Bonjour  
 
je pense que la date est convertie en mili seconds  ,
exemple 01/01/2008  12:35:59 = 2008*366*24*60*60*1000 +  12*60*60*1000..........  
attention c pas tjr 366 pour l'année !!!
 ensuite y a un passage  du mode décimal en mode binaire , je ne suis pas sur, tu peu tester ça  
 

Reply

Marsh Posté le 31-05-2008 à 07:53:11    

Les dates en Delphi en standard c'est un nombre flottant dont partie entière représente le nombre de jours depuis le 30/12/1899.
La partie flottante étant l'heure (1 étant le jour, 0,5 = 12h, etc.)

 

Avec le code suivant on voit à quoi ça ressemble la variable contenant ta date/heure en hexa :

 
Code :
  1. var
  2.   d: TDateTime;
  3. begin
  4.   d := EncodeDateTime(2008,1,1,12,35,59,0);
  5.   with TFileStream.Create('e:\01\d.dat', fmCreate) do
  6.     try
  7.       Write(d, SizeOf(d));
  8.     finally
  9.       Free;
  10.     end;
  11. end;
 

TDateTime = un double, donc 8 octets

 

Dans le fichier on a ceci :

 

http://img515.imageshack.us/img515/7506/image16sn3.png

 

La calculatrice Windows affiche ton nombre binaire converti en hexa, on voit que ça colle.

 

Bon après il faut convertir en double un nombre qu'on a sous forme binaire dans une chaîne [:figti] (enfin pour autant que ton fichier de config soit du texte - si c'est juste le contenu binaire que tu regardais ça devrait être facile)


Message édité par antp le 31-05-2008 à 08:10:43

---------------
mes programmes ·· les voitures dans les films ·· apprenez à écrire
Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed