Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Работа с фалами


новенький в Делфи ©   (2002-03-23 17:25:00) 

как мне вывести в Memo все файлы, дирректории из выбранного каталога?


новенький в Делфи   (2002-03-23 21:04:00) [1]

Спасибо


SDS   (2002-03-23 20:00:00) [2]

Вот функция для получения файлов в каталоге,
Ниже пример ее использования для получения всех файлов и каталогов в корневом каталоге диска D:

function GetFilesListInDir(FilesPath: string; var FindedFiles: TStringList): boolean;
var
hFileFind: THandle;
fData: TWin32FindDataA;
pcFilePath: PChar;
Buffer: array[1..MAX_PATH] of char;
ind: integer;
begin
Result:=False;
if FindedFiles=nil then Exit;
FindedFiles.Clear;
pcFilePath:=@Buffer;
FilesPath := FilesPath+"*.*";
StrPCopy(pcFilePath,FilesPath);
hFileFind:=FindFirstFile(pcFilePath,fData);
if hFileFind<>INVALID_HANDLE_VALUE then
begin
Result:=True;
repeat
FindedFiles.Add(fData.cFileName);
until FindNextFile(hFileFind,fData)=False;
ind:=FindedFiles.IndexOf(".");
if ind <> -1 then
FindedFiles.Delete(ind);
ind:=FindedFiles.IndexOf("..");
if ind <> -1 then
FindedFiles.Delete(ind);
end;
end;



Пример использования

procedure TForm1.Button1Click(Sender: TObject);
var
tmpList : TStringList;
begin
tmpList := TStringList.Create;
GetFilesListInDir("D:\", tmpList);
Memo1.Lines.Assign(tmpList);
tmpList.Free;
end;


Наверх

Титульная страница Поиск, карта сайта Написать письмо