Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2003.07.31;
Скачать: CL | DM;

Вниз

Работа с файлами   Найти похожие ветки 

 
Stas ©   (2003-05-29 09:34) [0]

Как перебрать все файлы в папке и во вложеных в нее папках ?
Заранее Спасибо


 
DVM ©   (2003-05-29 09:39) [1]

Вот пример подсчета размера папки со всем содержимым, в нем есть ответ на вопрос.

function GetDirectorySize(const Path: string): Int64;
var
FD : TWin32FindData;
FH : THandle;
TempSize: TULargeInteger;
begin
Result := 0;
if Path="" then exit;
if not(DirExists(Path)) then exit;
FH := FindFirstFile( PChar( Path + "*.*" ), FD );
repeat
if (FH<>INVALID_HANDLE_VALUE) and (FD.cFileName <> string(".")) and
(FD.cFileName<>string("..")) then
begin
if (FILE_ATTRIBUTE_DIRECTORY and FD.dwFileAttributes) <> 0 then
Inc(Result, GetDirectorySize(Path + FD.cFileName + "\"))
else
begin
TempSize.LowPart := FD.nFileSizeLow;
TempSize.HighPart := FD.nFileSizeHigh;
Inc(Result, TempSize.QuadPart);
end;
end;
until FindNextFile(FH,FD) = false;
FindClose(FH);
end;


 
Stas ©   (2003-05-29 11:07) [2]

Спасибо.



Страницы: 1 вся ветка

Текущий архив: 2003.07.31;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.019 c
1-100734
olookin
2003-07-19 11:03
2003.07.31
Свойство компонента


7-101000
V-navigator
2003-05-21 19:15
2003.07.31
Как програмно открыть защелку СD-ROM


3-100534
Spawn
2003-07-10 20:47
2003.07.31
Реляционные базы данных


6-100865
ec
2003-05-07 22:21
2003.07.31
ISAPI


1-100780
Erik
2003-07-16 15:59
2003.07.31
Отсутствует паралельность в com сервере.