Показать сообщение отдельно
  #4  
Старый 05.10.2012, 21:09
Аватар для SCrat.ORS
SCrat.ORS SCrat.ORS вне форума
Активный
 
Регистрация: 20.02.2007
Адрес: Мой адрес не дом и не улица, мой адрес 0x7С00
Сообщения: 208
Версия Delphi: 2006
Репутация: 884
По умолчанию

Актуально или нет - не знаю то тем не менее


функции для получения дат создания файла, и дат изменения файла
Код:
Function GetDateCreate(SR:TSearchRec):String;
Var
  DT: TFileTime;
  ST: TSystemTime;
DD,MM,YY,H,M,S:string;
Begin
Result:='';
FileTimeToLocalFileTime( SR.FindData.ftCreationTime, DT );
FileTimeToSystemTime( DT, ST );
If st.wDay<10 then DD:='0'+inttostr(st.wDay) else DD:=inttostr(st.wDay);
If st.wMonth<10 then MM:='0'+inttostr(st.wMonth) else MM:=inttostr(st.wMonth);
YY:=inttostr(st.wYear);
H:=inttostr(st.wHour);
If st.wMinute<10 then M:='0'+inttostr(st.wMinute) else M:=inttostr(st.wMinute);
If st.wSecond<10 then S:='0'+inttostr(st.wSecond) else S:=inttostr(st.wSecond);
Result := DD+'.'+MM+'.'+YY+' '+H+':'+M+':'+S;
end;

...

Дата создания := GetDateCreate(SR);
Дата изменения := DateTimetostr(FileDateToDateTime(SR.Time));

использовать в цикле поиска фалов

Код:
Var
  SR:TSearchRec;
  FindRes,exten,Name,Dir{путь где ищем все что есть}:string;
  k:Integer;
begin
FindRes:=FindFirst(Dir+'*.*',faAnyFile,SR);
While FindRes=0 do
  begin Name:=Dir; 
  if ((SR.Attr and faDirectory)=faDirectory) and
  ((SR.Name='.')or(SR.Name='..')) then
  begin
  FindRes:=FindNext(SR);
  Continue;
  end;

  if ((SR.Attr and faDirectory)=faDirectory) then /// если найден каталог, то
  begin
  FindFile(Dir+SR.Name+'\'); // входим в процедуру поиска с параметрами текущего каталога + каталог, что мы нашли
  FindRes:=FindNext(SR); // после осмотра вложенного каталога мы продолжаем поиск в этом каталоге
  Continue; // продолжить цикл
  end;
  Name:=Name+SR.Name;
  k:=length(SR.Name); exten:=copy(SR.Name,k-2,3);
  //if exten='txt' then
  try

  end;

... и т.д
__________________
Програмистами не рождаются, ими становятся!
Ответить с цитированием