![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Как узнать размер каталога? [D7, WinXP]
Генри © (2005-02-22 14:34:00)ЗДравствуйте. Как узнать сколько MB занимает каталог?
заране благодарен!
Virgo_Style (2005-02-22 14:52:00) [1]
> для каждого файла спросить GetFileSize
type
TSearchRec = record
Time: Integer;
Size: Integer;
Attr: Integer;
Name: TFileName;
ExcludeAttr: Integer;
FindHandle: THandle;
FindData: TWin32FindData;
end;
Топпер (2005-02-22 14:38:00) [2]рекурсивно пройти по всем файлам и подкаталогам и просуммировать размеры файлов
вот пример для рекурсивного удаления всех файлов и подкаталогов, переделай под себя:
procedure EmptyDir(path: string);
var
sr: TSearchRec;
begin
if FindFirst(path + '\*.*', faAnyFile, sr) = 0 then begin
repeat
if sr.Attr and faDirectory = 0 then begin
// not catalog
DeleteFile(path + '\' + sr.name);
end else begin
// catalog
if pos('.', sr.name) <= 0 then EmptyDir(path + '\' + sr.name);
end;
until FindNext(sr) <> 0;
end;
FindClose(sr);
end;
TUser (2005-02-22 14:38:00) [3]Рекурсивно обойти его, и для каждого файла спросить GetFileSize