Listar os nomes das pastas de de diretório?
06/09/2004
0
dentro de [b:b3a7611525]c:\apache\mysql\data[/b:b3a7611525] tenho as seguintes pastas:
bloco-10-10-1-0-24
bloco-10-10-2-0-24
bloco-10-10-3-0-24
bloco-200-195-24-0-24
fornecedores
clientes
usuarios
Preciso colocar o nome dessas pastas em variaveis, mais somentes as que conter blobo antes dos números, tipo:
ba := bloco-10-10-1-0-24
bb := bloco-10-10-2-0-24
bc := bloco-10-10-3-0-24
bd := bloco-200-195-24-0-24
as outras pasta devem ser descartadas...
Testei várias vezes e não tive êxito.
Alguém me ajuda?
Redoctober
Posts
06/09/2004
Ipc$
var sr:TSearchRec; begin if FindFirst(´c:\apache\mysql\data \*.*´, faAnyFile, sr) = 0 then Repeat if ((sr.Attr and $10) > 0) and (Pos(´BLOCO´, UpperCase(sr.Name)) = 1) then ShowMessage(sr.Name); // pasta selecionada Until FindNext(sr) <> 0; FindClose(sr); end;
09/09/2004
Redoctober
var sr:TSearchRec; begin if FindFirst(´c:\apache\mysql\data \*.*´, faAnyFile, sr) = 0 then Repeat if ((sr.Attr and $10) > 0) and (Pos(´BLOCO´, UpperCase(sr.Name)) = 1) then ShowMessage(sr.Name); // pasta selecionada Until FindNext(sr) <> 0; FindClose(sr); end;
Olá IPC$,
Não consegui rodar conforme o esperado!
Preciso que ele imprima o nome de todas as pastas que contenha a palavra bloco no nome
:(
09/09/2004
Tatuweb
procedure FindFolder (const Path: String; List: TStrings) ; var Res: TSearchRec; EOFound: Boolean; begin EOFound:= False; if FindFirst (Path, faDirectory, Res) < 0 then Exit else while not EOFound do begin if Res.Attr = faDirectory then List.Add(Res.Name) ; EOFound:= FindNext(Res) <> 0; end; FindClose(Res) ; end;
Para usar:
FindFolder (´c:\apache\mysql\data\bloco*´ , Listbox1.items);
Clique aqui para fazer login e interagir na Comunidade :)