Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 08.01.2010, 02:04   #1
BETONOMESHALKA
Пользователь
 
Аватар для BETONOMESHALKA
 
Регистрация: 25.06.2007
Сообщений: 40
По умолчанию Достать названия всех файлов в папке

Не могу достать названия всех файлов и папок в определенной папке, надо загнать это в Listbox вместе с расширенеем файлов. Помогите пожалуйста.
Граф дракула наш кумир
Патамушта он ВОМПИР!
BETONOMESHALKA вне форума Ответить с цитированием
Старый 08.01.2010, 02:19   #2
anGeee
Пользователь
 
Аватар для anGeee
 
Регистрация: 18.11.2008
Сообщений: 94
По умолчанию

Можно так:
Код:
procedure TForm1.Button1Click(Sender: TObject);
var
  tsr : tsearchrec;
begin
  if FindFirst(DirectoryName + '*.*',faAnyFile,tsr) = 0 then
    repeat
      ListBox1.Items.Add(tsr.name);
    until FindNext(tsr) <> 0;
  FindClose(tsr);
end;
Правда, файлы выводятся в листбокс не в том порядке, в каком они находятся в директории..
anGeee вне форума Ответить с цитированием
Старый 08.01.2010, 02:30   #3
BETONOMESHALKA
Пользователь
 
Аватар для BETONOMESHALKA
 
Регистрация: 25.06.2007
Сообщений: 40
По умолчанию

Надо чтобы уюзер сам указал папку
Граф дракула наш кумир
Патамушта он ВОМПИР!
BETONOMESHALKA вне форума Ответить с цитированием
Старый 08.01.2010, 02:42   #4
anGeee
Пользователь
 
Аватар для anGeee
 
Регистрация: 18.11.2008
Сообщений: 94
По умолчанию

Ну вот здесь же
Код:
if FindFirst(DirectoryName + '*.*',faAnyFile,tsr) = 0 then
есть переменная DirectoryName. Сюда и записывайте имя папки. Ну или можно сразу, если юзер вводит имя папки в edit, писать :
Код:
if FindFirst(edit1.text + '*.*',faAnyFile,tsr) = 0 then
anGeee вне форума Ответить с цитированием
Старый 26.11.2012, 18:34   #5
kta87
Форумчанин
 
Аватар для kta87
 
Регистрация: 22.02.2010
Сообщений: 912
По умолчанию

Цитата:
Сообщение от anGeee Посмотреть сообщение
Правда, файлы выводятся в листбокс не в том порядке, в каком они находятся в директории..
Не подскажешь тогда по какому принципу идет формирование? алфавит?
kta87 вне форума Ответить с цитированием
Старый 23.01.2015, 10:05   #6
Shinobi3456
 
Регистрация: 03.09.2012
Сообщений: 7
Хорошо Развернутый ответ

procedure GetAllFiles( Path: string; Lb: TListBox);
var
sRec: TSearchRec;
isFound: boolean;
begin
isFound := FindFirst( Path + '\*.*', faAnyFile, sRec ) = 0;
while isFound do
begin
if ( sRec.Name &lt;&gt; '.' ) and ( sRec.Name &lt;&gt; '..' ) then
begin
if ( sRec.Attr and faDirectory ) = faDirectory then
GetAllFiles( Path + '\' + sRec.Name, Lb );
Lb.Add( Path + '\' + sRec.Name );
end;
Application.ProcessMessages;
isFound := FindNext( sRec ) = 0;
end;
FindClose( sRec );

end;
Тут рабочий пример. На сайте этому просвещена целая статья в плоть до того как его модернизировать и применить)Познавательно....
Скопировал с сайта http://myshinobi.ru/kak-poluchit-spi...-papke-delphi/.
Shinobi3456 вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
скрипт должен сортировать названия файлов strug PHP 2 28.08.2009 12:22
Как в указанной директории узнать названия всех папок evgenrpo Общие вопросы C/C++ 5 08.06.2009 14:20
Нужна прога чотбы скинуть названия файлов в папке в один файл (txt) Ninzjacont Помощь студентам 2 08.02.2009 20:30
Найти названия файлов из Excel АLексаNдр Microsoft Office Excel 27 10.11.2008 16:55
Как вывести названия всех столбцов таблицы в PL/SQL D-mon БД в Delphi 6 25.06.2008 11:10