Вниз
Скачать: 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.021 c
11-1056811361
mike.dld
2003-06-28 18:42
2004.03.28
Streams


1-1078732046
Erik
2004-03-08 10:47
2004.03.28
Ошибка в TBaseVirtualTree.ScrollIntoView


3-1077189188
Pul
2004-02-19 14:13
2004.03.28
Поля TIMESTAMP в INTERBASE


3-1077170360
Лора
2004-02-19 08:59
2004.03.28
Создание таблиц


1-1078572591
clapan
2004-03-06 14:29
2004.03.28
Здравствуйте, подскажите как работать с NMSMTP




   Наверх