Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Удаление содержимого каталога [D5, Win95/98]


Марина ©   (2001-12-20 15:42:00) 

Подскажите, пожалуйста, как удалить содержимое каталога,а сам каталог оставить? Нужно что-то вроде deletefile("c:\kio\massiv\*.*")Заранее благодарна и прошу прощения за "чайниковский" вопрос.


Dimka Maslov   (2001-12-20 16:05:00) [1]

uses Windows, SysUtils, Classes, Masks;

procedure DeleteFiles(Path: string);
var
Mask: string;
SearchRec: TSearchRec;
FindResult: Integer;
List: TStringList;
i: Integer;
begin
Mask:=ExtractFileName(Path);
if Mask = "" then Mask:="*.*";
Path:=ExtractFilePath(Path);
if Path = "" then Path:=IncludeTrailingBackslash(GetCurrentDir);
List:=TStringList.Create;
try
FindResult:=FindFirst(Path+"*.*", faAnyFile, SearchRec);
try
while FindResult = 0 do with SearchRec do begin
if ((Attr and faDirectory) = 0) and MatchesMask(Name, Mask) then
List.Add(Name);
FindResult:=FindNext(SearchRec);
end;
for i:=0 to List.Count - 1 do DeleteFile(Path+List[i]);
finally
FindClose(SearchRec);
end;
finally
List.Free;
end;
end;


gek   (2001-12-20 15:47:00) [2]

if Findfirst("\TEMP\*.tmp",faAnyFile, SearchRec)= 0 then
while (FindNext(SearchRec) = 0) do
if not deletefile(pchar("\TEMP\"+SearchRec.name))then
Application.Terminate;
FindClose(SearchRec);


Наверх

Титульная страница Поиск, карта сайта Написать письмо