Вниз
Скачать: 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 вся ветка

Скачать: CL | DM;



Память: 0.45 MB
Время: 0.02 c
1-1078647630
bjohny
2004-03-07 11:20
2004.03.28
Утечка памяти


14-1077804171
Budy
2004-02-26 17:02
2004.03.28
Иконка около часов


3-1077704772
ПИТОН
2004-02-25 13:26
2004.03.28
MySQL -> Oracle


1-1078398933
Andrew2
2004-03-04 14:15
2004.03.28
Потоки и DLL


11-1057512455
Ajax
2003-07-06 21:27
2004.03.28
Смена языка интерфейса




   Наверх