Ir para conteúdo
Fórum Script Brasil
  • 0

(Resolvido) Quantos arquivos numa pasta


Vitor Eduardo

Pergunta

Olá, boa tarde a todos.

 

Como faço para saber quantos arquivos tenho numa pasta? Independente do tipo de arquivo. Da forma como venho fazendo acho que ele pega pelo tipo do arquivo, mas não posso fazer distinção.

 

Para facilitar, vou descrever meu problema.

 

Tenho um cadastro onde os usuários poderão (e farão) colocar vários arquivos numa pasta predefinida. Tipo: Cadastram um registro e para este registro cadastram um doc, um jpg, um cdr e um pdf. Mas para um outro registro colocam mais arquivos.

 

Que preciso então. Estou montando um nome predefinido para os arquivos.

 

Exemplo:

Para o registro 122 da tabela SZT tenho na minha pasta. SZT0000000012200001.doc, SZT0000000012200002.cdr, SZT0000000012200003.doc;

Para o registro 123 da tabela SZT tenho na minha pasta. SZT0000000012300001.jpg, SZT0000000012300002.pdf.

 

Acho que ficou claro né. Preciso saber a quantidade de arquivos para fazer o sequencial no nome do arquivo.

 

Antes que alguém me pergunte, não posso armazenar os caminhos em uma tabela detalhe por que tenho de evitar ao máximo criar tabelas na base.

 

Desde já.

 

Muito grato.

Link para o comentário
Compartilhar em outros sites

3 respostass a esta questão

Posts Recomendados

  • 0
Como faço para saber quantos arquivos tenho numa pasta? Independente do tipo de arquivo

exemplo:

procedure TForm1.Button1Click(Sender: TObject);
var
  sr: TSearchRec; cont : integer;
begin
  cont := 0;
  if FindFirst(Edit1.Text, faArchive, sr) = 0 then
    begin
      repeat
        if (sr.Attr and faArchive) = sr.Attr then
           inc(cont);
      until FindNext(sr) <> 0;
      FindClose(sr);
    end;

  showmessage('Total de arquivos na pasta '+ Edit1.Text + ' = '+ inttostr(cont));
end;
exemplo de uso:
Edit1.Text := c:\MinhaPasta\*.*

Edit1.Text := c:\MinhaPasta\*.doc

Edit1.Text := c:\MinhaPasta\D*.*

abraço

Link para o comentário
Compartilhar em outros sites

  • 0
Como faço para saber quantos arquivos tenho numa pasta? Independente do tipo de arquivo

exemplo:

procedure TForm1.Button1Click(Sender: TObject);
var
  sr: TSearchRec; cont : integer;
begin
  cont := 0;
  if FindFirst(Edit1.Text, faArchive, sr) = 0 then
    begin
      repeat
        if (sr.Attr and faArchive) = sr.Attr then
           inc(cont);
      until FindNext(sr) <> 0;
      FindClose(sr);
    end;

  showmessage('Total de arquivos na pasta '+ Edit1.Text + ' = '+ inttostr(cont));
end;
exemplo de uso:
Edit1.Text := c:\MinhaPasta\*.*

Edit1.Text := c:\MinhaPasta\*.doc

Edit1.Text := c:\MinhaPasta\D*.*

abraço

Obrigado. Na verdade eu até consegui fazer quebrando um pouco a cabeça. Mas vale mesmo. Fiz um pouquinho diferente.

Agora vou ver se consigo fazer os arquivos aparecerem uma lista com os icones respectivos.

Abraço.

Link para o comentário
Compartilhar em outros sites

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,3k
    • Posts
      652,5k
×
×
  • Criar Novo...