Форум по Delphi программированию

Delphi Sources



Вернуться   Форум по Delphi программированию > Все о Delphi > Файловая система
Ник
Пароль
Регистрация <<         Правила форума         >> FAQ Пользователи Календарь Поиск Сообщения за сегодня Все разделы прочитаны

Ответ
 
Опции темы Поиск в этой теме Опции просмотра
  #1  
Старый 18.10.2010, 17:30
Zork Zork вне форума
Прохожий
 
Регистрация: 13.04.2009
Сообщения: 13
Репутация: 10
Вопрос Количество файлов на диске

Вопрос в следующем:
Как узнать количество всех файлов на диске С например и занести эту цифру в Label1? Работу с файлами только изучаю, так что буду благодарен если поподробнее обьясните как делается...
Заранее спасибо.
Ответить с цитированием
  #2  
Старый 18.10.2010, 18:20
Аватар для v1s2222
v1s2222 v1s2222 вне форума
Продвинутый
 
Регистрация: 07.09.2010
Сообщения: 726
Репутация: 26711
По умолчанию

Все довольно просто... описывать код не буду, но думаю и сами разберетесь - http://www.delphisources.ru/pages/fa...es_search.html
Ищите все файлы (маска - *.*) на нужном диске, заносите их в ListBox, и ListBox.Count - и будет кол-во файлов на диске...
__________________
Помогаю за Спасибо
Ответить с цитированием
  #3  
Старый 18.10.2010, 20:11
lmikle lmikle вне форума
Модератор
 
Регистрация: 17.04.2008
Сообщения: 8,020
Версия Delphi: 7, XE3, 10.2
Репутация: 49089
По умолчанию

Зачем куда-то что-то заносить, если задача стит только в посчитать?

Код:
function GetFileCount(APath : String) : Integer;
var
  F : TSearchRec;
   iFound : Integer;
begin
  Result := 0;
  APath := IncludeTrailingPathDelimeter(APath);
  iFound := FindFirst(APath + '*.*',faAnyFile,F);
  While iFound = 0 Do
    Begin
       If (F.Attr And faDirectory) = 0 
         Then Inc(Result) 
         Else
           If (F.Name <> '.') And (F.Name <> '..') 
              Then Result := Result + GetFileCount(APath + F.Name);
       ifound := FindNext(F);
    End;
  FindClose(F);
end;
Ответить с цитированием
  #4  
Старый 18.10.2010, 20:22
Аватар для Страдалецъ
Страдалецъ Страдалецъ вне форума
Гуру
 
Регистрация: 09.03.2009
Адрес: На курорте, из окна вижу теплое Баренцево море. Бррр.
Сообщения: 4,721
Репутация: 52347
По умолчанию

Код:
faAnyFiley
По Фрейду можно сказать, что пациент голодный.
__________________
Жизнь такова какова она есть и больше никакова.
Помогаю за спасибо.
Ответить с цитированием
  #5  
Старый 18.10.2010, 20:51
lmikle lmikle вне форума
Модератор
 
Регистрация: 17.04.2008
Сообщения: 8,020
Версия Delphi: 7, XE3, 10.2
Репутация: 49089
По умолчанию

Ну бывает. Писал-то сразу здесь.
Исправил...
Ответить с цитированием
  #6  
Старый 19.10.2010, 16:02
Zork Zork вне форума
Прохожий
 
Регистрация: 13.04.2009
Сообщения: 13
Репутация: 10
По умолчанию

Большое спасибо. Разобрался со статейкой и c помощью ListBox1.Count пощитал. Только вот с кодиком lmikle не могу понять... Разшифруй плиз. Было бы неплохо без ListBox count, хотя и не принцыпиально. Просто интересно как это делается. Еще раз огромное спасибо.Что искал, то нашел)
Ответить с цитированием
Ответ


Delphi Sources

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск
Опции просмотра

Ваши права в разделе
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения

BB-коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход


Часовой пояс GMT +3, время: 10:55.


 

Сайт

Форум

FAQ

RSS лента

Прочее

 

Copyright © Форум "Delphi Sources" by BrokenByte Software, 2004-2023

ВКонтакте   Facebook   Twitter