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

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

массив из имен


Niakris ©   (2004-08-06 20:26:00) 

привет!
помогите по проблеме:
Как составить массив из всех имен файловсодержащихся в папке?


Niakris   (2004-08-07 11:43:00) [1]

Мммм, надо попробовать.
Спасибо.


Fay   (2004-08-06 22:04:00) [2]

Только не спрашивай "что такое Memo1?" 8)

type
 TFilesArray = array of string;

procedure YourCoolProc(cPath : string; var a : TFilesArray);
var
 fh : DWORD;
 fd : _WIN32_FIND_DATAA;
begin
 fh := FindFirstFile(PChar(cPath+'*'), fd);
 if fh = INVALID_HANDLE_VALUE then RaiseLastOSError;
 SetLength(a, 0);
 FillChar(fd, SizeOf(fd), 0);
 repeat
   if (fd.dwFileAttributes and FILE_ATTRIBUTE_DIRECTORY) = 0 then
     begin
       SetLength(a, High(a) + 2);
       a[High(a)] := fd.cFileName;
     end;
 until not FindNextFile(fh, fd);
 Windows.FindClose(fh);
end;

procedure TForm1.Button1Click(Sender: TObject);
var
 a : TFilesArray;
 i : Integer;
begin
 YourCoolProc('c:\', a);
 Memo1.Lines.Clear;
 for i := Low(a) to High(a) do
   Memo1.Lines.Add(a[i]);


Niakris   (2004-08-06 21:53:00) [3]

нет.
Да блин, я любитель, а вы меня такими страшными словами загрузили, аж жуть.


Fay   (2004-08-06 21:26:00) [4]

А что такое [3] - догоняешь?


TUser   (2004-08-06 20:59:00) [5]

С этого начинали все программеры. И с иконки в трее тоже. См. факи - куча инфы на эту тему.


Niakris   (2004-08-06 20:43:00) [6]

простите, я не догоняю!
Что есть:
ПАПКА_КАУНТ_ЛЕНГТ
ПАПКА_КАУНТ-1
ПАПКА_КАУНТ_ЭЛЕМЕНТ


Андрей Сенченко   (2004-08-06 20:35:00) [7]

FindFirst - FindNext - FindClose

ну и безусловно F1


Niakris   (2004-08-06 20:33:00) [8]

И кто там кого канует?


olookin   (2004-08-06 20:30:00) [9]

var s: array of string;

SetLenght(s,ПАПКА_КАУНТ_ЛЕНГТ);
for i:=0 to ПАПКА_КАУНТ-1 do
s[i]:=ПАПКА_КАУНТ_ЭЛЕМЕНТ[i];


Наверх

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