Saber fecha de creación, modificación y acceso de un fichero

5177 vistas

Es la información que aparece cuando haces click con el boton derecho sobre un fichero bajo los títulos de "Creado", "Modificado" y "Ultimo acceso".



delphi
  1. procedure TForm1.Button1Click(Sender: TObject);
  2. var
  3.   FileHandle : THandle;
  4.   LocalFileTime : TFileTime;
  5.   DosFileTime : DWORD;
  6.   LastAccessedTime : TDateTime;
  7.   FindData : TWin32FindData;
  8. begin
  9.   FileHandle := FindFirstFile('c:\directorio\UnFichero.txt', FindData);
  10.   if FileHandle <> INVALID_HANDLE_VALUE then
  11.   begin
  12.     Windows.FindClose(Handle);
  13.     if (FindData.dwFileAttributes and FILE_ATTRIBUTE_DIRECTORY) = 0 then
  14.     begin
  15.       FileTimeToLocalFileTime(FindData.ftLastAccessTime, LocalFileTime);
  16.       FileTimeToDosDateTime(LocalFileTime,
  17.       LongRec(DosFileTime).Hi,LongRec(DosFileTime).Lo);
  18.       LastAccessedTime := FileDateToDateTime(DosFileTime);
  19.       Label1.Caption := DateTimeToStr(LastAccessedTime);
  20.     end;
  21.   end;
  22. end;



Este ejemplo escribe en un TLabel (Label1) la fecha del último acceso. Para obtener las demás fechas, sólo tendremos que cambiar el atributo devuelto por FindData (ftCreationTime, ftLastAccessTime o ftLastWriteTime)