Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2008.04.27;
Скачать: CL | DM;

Вниз

Список папок   Найти похожие ветки 

 
fev   (2008-04-03 00:42) [0]

Как занести в TStrings список папок в указанной директории?


 
Германн ©   (2008-04-03 00:45) [1]


> fev   (03.04.08 00:42)
>
> Как занести в TStrings список папок в указанной директории?
>
>

Во-первых, в TStrings вообще ничего нельзя занести. Во-вторых, ты уже научился получать список папок в указанной директории?


 
fev   (2008-04-03 00:49) [2]

вот в TStrings и надо получить список папок в указанной директории


 
Германн ©   (2008-04-03 00:50) [3]


> fev   (03.04.08 00:49) [2]
>
> вот в TStrings и надо получить список папок в указанной
> директории
>

Ааа. Ну тогда я - пас.


 
{RASkov} ©   (2008-04-03 00:59) [4]

> [2] fev   (03.04.08 00:49)

FindFirst/Next/Close - можно использовать как ключевые слова для поиска по этому, например, сайту...


 
Германн ©   (2008-04-03 01:08) [5]


> {RASkov} ©   (03.04.08 00:59) [4]

Голосом кота Матроскина:
- Потом ещё про TStrings объяснять придётся, потом про вышивание на машинке :-)


 
Anatoly Podgoretsky ©   (2008-04-03 16:10) [6]

> fev  (03.04.2008 00:49:02)  [2]

Фу какой упорный и недоверчивый.


 
<code>   (2008-04-03 19:11) [7]


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;


 
Andy BitOff ©   (2008-04-03 19:30) [8]

>   (03.04.08 19:11) [7]

Хм...
А какой загадочный смысл в этом(?):

> SL.Clear;


 
{RASkov} ©   (2008-04-03 19:38) [9]

> [7]   (03.04.08 19:11)

Какой не грамотный код :(


 
<code>   (2008-04-03 19:57) [10]

>А какой загадочный смысл в этом(?)

На всякий случай.

>Какой не грамотный код :(

Что там не так?


 
{RASkov} ©   (2008-04-03 20:16) [11]

> [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 нужно только если найдено, иначе не нужно... согласен, не критично, но....)


 
{RASkov} ©   (2008-04-03 20:17) [12]

> [10]   (03.04.08 19:57)

Похоже из-за твоего "ника" "плывут" сообщения у других :(



Страницы: 1 вся ветка

Текущий архив: 2008.04.27;
Скачать: CL | DM;

Наверх




Память: 0.49 MB
Время: 0.014 c
4-1188461470
Nucer
2007-08-30 12:11
2008.04.27
Version info (Build)


15-1205429465
Kolan
2008-03-13 20:31
2008.04.27
FreeReport, как вывести два знака после запятой?


2-1206806274
KiLLiR
2008-03-29 18:57
2008.04.27
Запрет на вставку текста из буфера в Edit


15-1205653077
pvr
2008-03-16 10:37
2008.04.27
Языковая панель


15-1204642920
Real
2008-03-04 18:02
2008.04.27
Web editor (open source)