![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Список папок
fev © (2008-04-03 00:42:00)Как занести в TStrings список папок в указанной директории?
{RASkov} (2008-04-03 20:17:00) [1]> [10]
(03.04.08 19:57)
Похоже из-за твоего "ника" "плывут" сообщения у других :(
{RASkov} (2008-04-03 20:16:00) [2]> [10]
(03.04.08 19:57)
> Что там не так?
Хотя бы [8] :)
Помимо:
Нет смысла в глобальном объекте, repeat ... until - уже операторные скобки, чем отличаются:
> if (F.Attr and faDirectory <> 0) then SL.Add(F.Name);
> if (F.Attr and faDirectory)<>0 then Recurse(Dir+F.name);
?
нет убивания SL - но здесь ладно... всеж глобальная штука), ну и немного неверно организованно findfirst/next/close....
(FindClose нужно только если найдено, иначе не нужно... согласен, не критично, но....)
<code> (2008-04-03 19:57:00) [3]>А какой загадочный смысл в этом(?)
На всякий случай.
>Какой не грамотный код :(
Что там не так?
{RASkov} (2008-04-03 19:38:00) [4]> [7]
(03.04.08 19:11)
Какой не грамотный код :(
Andy BitOff (2008-04-03 19:30:00) [5]>
(03.04.08 19:11) [7]
Хм...
А какой загадочный смысл в этом(?):
> SL.Clear;
<code> (2008-04-03 19:11:00) [6]
VAR SL:TStringList ;
procedure Recurse(Dir: string);
var
F: TSearchRec;
R: Integer;
begin
if Dir<>'' then if Dir[length(Dir)]<>'\' then Dir:=Dir+'\';
if FindFirst(Dir+'*.*', faAnyFile, F)=0 then
repeat
begin
if (F.name='.') or (F.name='..') then continue;
if (F.Attr and faDirectory <> 0) then SL.Add(F.Name);
if (F.Attr and faDirectory)<>0 then Recurse(Dir+F.name);
end;
until FindNext(F)<>0;
FindClose(F);
end;
procedure TForm1.FormCreate(Sender: TObject);
begin
SL:=TStringList.create;
SL.Clear;
Recurse('e:\BOOKS') ;
ListBox1.Items:=SL;
end;
Anatoly Podgoretsky (2008-04-03 16:10:00) [7]> fev (03.04.2008 00:49:02) [2]
Фу какой упорный и недоверчивый.
Германн (2008-04-03 01:08:00) [8]
> {RASkov} © (03.04.08 00:59) [4]
Голосом кота Матроскина:
- Потом ещё про TStrings объяснять придётся, потом про вышивание на машинке :-)
{RASkov} (2008-04-03 00:59:00) [9]> [2] fev (03.04.08 00:49)
FindFirst/Next/Close - можно использовать как ключевые слова для поиска по этому, например, сайту...
Германн (2008-04-03 00:50:00) [10]
> fev (03.04.08 00:49) [2]
>
> вот в TStrings и надо получить список папок в указанной
> директории
>
Ааа. Ну тогда я - пас.
fev (2008-04-03 00:49:00) [11]вот в TStrings и надо получить список папок в указанной директории
Германн (2008-04-03 00:45:00) [12]
> fev (03.04.08 00:42)
>
> Как занести в TStrings список папок в указанной директории?
>
>
Во-первых, в TStrings вообще ничего нельзя занести. Во-вторых, ты уже научился получатьсписок папок в указанной директории?