Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 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.47 MB
Время: 0.039 c
15-1172761095
iXT
2007-03-01 17:58
2007.03.25
Аналог SpinEdit


15-1172922485
Jan
2007-03-03 14:48
2007.03.25
База городов


15-1172435460
DillerXX
2007-02-25 23:31
2007.03.25
$ и 666 см


3-1167245485
крошка
2006-12-27 21:51
2007.03.25
Как правильно раздать права пользователям MS SQL и кто такой DBO?


2-1172838130
kester
2007-03-02 15:22
2007.03.25
DBListBox