Узнаем немного информации о файле

Сегодня мы поработаем с файлами. Попробуем определить путь к файлу, его расширение, атрибуты, дату создания и изменения и многое другое. Получать путь к файлу мы будем с помощью диалога открытия файла, а сохранять результат в компонент Memo.
Итак, из вкладки Dialogs кидаем на форму компонент OpenDialog. Также создаем Memo и Button(они на панели Standart).
На клик по Button1 пишем такой код:

procedure TForm1.Button1Click(Sender: TObject);
var
  MyS: TWin32FindData;
  FName: string;
  MyTime: TFileTime;
  MySysTime: TSystemTime;
begin
if OpenDialog1.Execute then
  if OpenDialog1.FileName <> '' then
  begin
  Memo1.Clear;
  FName:=OpenDialog1.FileName;
  with Memo1.Lines do 
  begin 
    Add('Directory - '+ExtractFileDir(FName));
    Add('Drive - '+ExtractFileDrive(FName));
    Add('Extension - '+ExtractFileExt(FName)); 
    Add('File name - '+ExtractFileName(FName)); 
    Add('Path - '+ExtractFilePath(FName));
    Add('');

    FindFirstFile(PChar(FName), MyS);
    case MyS.dwFileAttributes of
      FILE_ATTRIBUTE_COMPRESSED: Add('Attribute - File is compressed');
      FILE_ATTRIBUTE_HIDDEN: Add('Attribute - File is hidden'); 
      FILE_ATTRIBUTE_NORMAL: Add('Attribute - File has no any attributes'); 
      FILE_ATTRIBUTE_READONLY: Add('Attribute - Read only file'); 
      FILE_ATTRIBUTE_SYSTEM: Add('Attribute - System file'); 
      FILE_ATTRIBUTE_TEMPORARY: Add('Attribute - File for temporary storage'); 
      FILE_ATTRIBUTE_ARCHIVE: Add('Attribute - Archive file'); 
    end; 

    MyTime:=MyS.ftCreationTime; 
    FileTimeToSystemTime(MyTime, MySysTime); 
    Add( 
      'Time Creation - '+ 
      IntToStr(MySysTime.wDay)+'.'+ 
      IntToStr(MySysTime.wMonth)+'.'+
      IntToStr(MySysTime.wYear)+'  '+ 
      IntToStr(MySysTime.wHour)+':'+ 
      IntToStr(MySysTime.wMinute)); 

    MyTime:=MyS.ftLastAccessTime; 
    FileTimeToSystemTime(MyTime, MySysTime); 
    Add( 
      'Last time access - '+ 
      IntToStr(MySysTime.wDay)+'.'+ 
      IntToStr(MySysTime.wMonth)+'.'+ 
      IntToStr(MySysTime.wYear)); 

    Add('Size - '+IntToStr(MyS.nFileSizeLow));
    Add('Alternate name - '+StrPas(MyS.cAlternateFileName)); 
  end;
  end;
end;



Теперь сохраняем проект и компилируем его. Всё должно получиться!
А потом на сайте coding4.net - коллективный блог о программировании под .Net Framework почитайте статьи о программировании под .Net.

Удачи!

Расслабиться пора!
Вот она какая, командная работа:)






Популярные сообщения из этого блога

Delphi: Создаем простейшую 2D игру