Текущий архив: 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