Ir al contenido



Foto

Cómo conocer la información de un archivo especí­fico


  • Por favor identifícate para responder
2 respuestas en este tema

#1 enecumene

enecumene

    Webmaster

  • Administrador
  • 7.409 mensajes
  • LocationRepública Dominicana

Escrito 20 mayo 2009 - 02:16

Pues eso, colocaremos un TMemo y un TButton en un form y colocaremos en su evento OnClick lo siguiente:



delphi
  1. procedure TForm1.Button1Click(Sender: TObject);
  2. var
  3.   MyS: TWin32FindData;
  4.   FName: string;
  5.   MyTime: TFileTime;
  6.   MySysTime: TSystemTime;
  7. begin
  8.   Memo1.Clear;
  9.   FName:='C:\Documents and Settings\fleonor\Desktop\fotod\20-05-2009\CIMG0046.JPG'; //Aquí­ colocamos la ruta del archivo
  10.   with Memo1.Lines do
  11.   begin
  12.     Add('Directorio - '+ExtractFileDir(FName));
  13.     Add('Disco - '+ExtractFileDrive(FName));
  14.     Add('Extensión - '+ExtractFileExt(FName));
  15.     Add('Nombre del Archivo - '+ExtractFileName(FName));
  16.     Add('Ruta - '+ExtractFilePath(FName));
  17.     Add('');
  18.  
  19.     FindFirstFile(PChar(FName), MyS);
  20.     case MyS.dwFileAttributes of
  21.       FILE_ATTRIBUTE_COMPRESSED: Add('Atributo - Archivo está comprimido');
  22.       FILE_ATTRIBUTE_HIDDEN: Add('Atributo - Archivo está escondido');
  23.       FILE_ATTRIBUTE_NORMAL: Add('Atributo - Archivo sin atributos');
  24.       FILE_ATTRIBUTE_READONLY: Add('Atributo - En Modo Lectura');
  25.       FILE_ATTRIBUTE_SYSTEM: Add('Atributo - Archivo del sistema');
  26.       FILE_ATTRIBUTE_TEMPORARY: Add('Atributo - Archivo temporal');
  27.       FILE_ATTRIBUTE_ARCHIVE: Add('Atributo - Fichero de Archivo');
  28.     end;
  29.  
  30.     MyTime:=MyS.ftCreationTime;
  31.     FileTimeToSystemTime(MyTime, MySysTime);
  32.     Add(
  33.       'Creado el - '+
  34.       IntToStr(MySysTime.wDay)+'.'+
  35.       IntToStr(MySysTime.wMonth)+'.'+
  36.       IntToStr(MySysTime.wYear)+'  '+
  37.       IntToStr(MySysTime.wHour)+':'+
  38.       IntToStr(MySysTime.wMinute));
  39.  
  40.     MyTime:=MyS.ftLastAccessTime;
  41.     FileTimeToSystemTime(MyTime, MySysTime);
  42.     Add(
  43.       'Modificado el - '+
  44.       IntToStr(MySysTime.wDay)+'.'+
  45.       IntToStr(MySysTime.wMonth)+'.'+
  46.       IntToStr(MySysTime.wYear));
  47.  
  48.     Add('Tamaño - '+IntToStr(MyS.nFileSizeLow));
  49.     Add('Nombre Alterno - '+StrPas(MyS.cAlternateFileName));
  50.   end;
  51. end;



Saludos.
  • 0

#2 Delphius

Delphius

    Advanced Member

  • Administrador
  • 6.280 mensajes
  • LocationArgentina

Escrito 20 mayo 2009 - 09:44

Gracias amigo, hoy he aprendido algo nuevo. Tení­a total desconocimiento del tipo TWin32FindData, TFileTime, TSystemTime :s

Saludos,
  • 0

#3 enecumene

enecumene

    Webmaster

  • Administrador
  • 7.409 mensajes
  • LocationRepública Dominicana

Escrito 21 mayo 2009 - 07:46

Gracias amigo, hoy he aprendido algo nuevo. Tení­a total desconocimiento del tipo TWin32FindData, TFileTime, TSystemTime :s

Saludos,


Hola Delphius, al igual tú tení­a total desconocimiento sobre ellos, yo me topé con esos de casualidad, pero estoy seguro de que hay mejores códigos que éste para adquirir esas informaciones, pero mientras, éste hace el trabajo :p.

Saludos.
  • 0