Текущий архив: 2007.03.25;
Скачать: CL | DM;
Вниз
Как узнать размер каталога по пути? Найти похожие ветки
← →
Roman_S © (2007-03-03 19:39) [0]Как узнать размер каталога? (в каталоге находится несколько файлов и подкаталогов с файлами)
Известен путь к нему.
← →
Virgo_Style © (2007-03-03 20:07) [1]суммированием размеров файлов и файлов-в-подкаталогах. О том, как их всех найти - см. здесь http://delphimaster.net/view/2-1172905502/
← →
Anatoly Podgoretsky © (2007-03-03 22:32) [2]Что такое размер каталог, вроде как безразмерное
← →
DVM © (2007-03-03 23:41) [3]
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 := Windows.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 Windows.FindNextFile(FH, FD) = false;
if FH <> 0 then Windows.FindClose(FH);
end;
← →
DVM © (2007-03-03 23:42) [4]Подкаталоги рекурсией
Страницы: 1 вся ветка
Текущий архив: 2007.03.25;
Скачать: CL | DM;
Память: 0.45 MB
Время: 0.034 c