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

Вниз

Directory Size   Найти похожие ветки 

 
opoloxai ©   (2004-03-10 18:04) [0]

Добрый день.
Как определить размер директории (со вложеными папками)?
Заранее спасибо.


 
TUser ©   (2004-03-10 18:28) [1]

Рекурсивно обойти папку и посмотреть размер всех файлов.


 
pasha_golub ©   (2004-03-10 18:32) [2]


var
FoldersCount:integer;
TotalSize:int64;
procedure TDetailsThread.GetFolderSize(const APath: string);
var SR: TSearchRec;
begin
 if Terminated then Exit;
 if FindFirst(APath+"\*.*", faAnyFile, sr) = 0 then
     repeat
       if ((sr.Attr and faDirectory) = faDirectory) then
              begin
               if (sr.Name <> ".") and (sr.Name <> "..") then
                    begin
                       GetFolderSize(APath+"\"+sr.Name);
                       inc(FoldersCount);
                    end
              end      
       else
         begin
              inc(FilesCount);
              TotalSize := TotalSize + sr.Size;
         end;    

     until (FindNext(sr) <> 0) or (Terminated);
 FindClose(sr);
end;


 
opoloxai ©   (2004-03-10 18:45) [3]

Большое спасибо всем.
Я так и делаю, но почему же нет готовой процедуры??? Непонятно.


 
TUser ©   (2004-03-10 19:42) [4]

Ну, не для каждой ведь задачи должна быть готовая процедура, разработанная программерами Борланда. Задача-то довольно редко встречающаяся.



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

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

Наверх




Память: 0.47 MB
Время: 0.022 c
4-1073900515
NikeOLD
2004-01-12 12:41
2004.03.28
Создание расписания в программе (планировщика)


14-1077850939
Думкин
2004-02-27 06:02
2004.03.28
С днем рождения! 27 февраля.


1-1078397681
Dina
2004-03-04 13:54
2004.03.28
Есть триTedit.


4-1074418192
Max003
2004-01-18 12:29
2004.03.28
Какие параметры задавать EnableMenuItem


14-1078001579
Layner
2004-02-28 23:52
2004.03.28
Люди, никто не ставил на комп где стоит NT2000, 98, 2й ОС?