Ver Diretorio
Moderador: Moderadores
Ver Diretorio
Mocada, como faco pra verificar se um diretorio Existe, tipo
C:\TESTE\
se tiver blz , caso contrario , vou dar uma mensagem
Obrigado
C:\TESTE\
se tiver blz , caso contrario , vou dar uma mensagem
Obrigado
- sygecom
- Administrador

- Mensagens: 7131
- Registrado em: 21 Jul 2006 10:12
- Localização: Alvorada-RS
- Contato:
Re: Ver Diretorio
Utilizando a CA-TOOLS
Código: Selecionar todos
IF DIRCHANGE("\DADOS") == -3
ALERT("NÃO FOI POSSIVEL ACHAR O DIRETORIO")
ENDIFLeonardo Machado
xHarbour.org + Hwgui + PostgreSql
xHarbour.org + Hwgui + PostgreSql
-
Adalberto
- Usuário Nível 3

- Mensagens: 343
- Registrado em: 01 Set 2007 01:09
- Localização: Santa Cruz de la Sierra - Bolivia
Re: Ver Diretorio
negrao,
Utilizando Clipper puro, pode testar esse exemplo:
Um grande abraço.
Utilizando Clipper puro, pode testar esse exemplo:
Código: Selecionar todos
LOCAL acTabla:= DIRECTORY( ( “D:\*.*” ) , “D” ) // D = Diretorio
LOCAL lTem := .F.
LOCAL nI
FOR nI := 1 TO LEN( acTabla )
cNombre := ALLTRIM( acTabla[ nI , 1 ] )
IF ( cNombre == “TESTE” ) // O qualquer outro diretório
lTem := .T.
EXIT
ENDIF
NEXT nI
IF lTem
ALERT( “O diretório existe” )
ELSE
ALERT( “O diretório não existe” )
ENDIF- Toledo
- Administrador

- Mensagens: 3133
- Registrado em: 22 Jul 2003 18:39
- Localização: Araçatuba - SP
- Contato:
Re: Ver Diretorio
Outro exemplo:
Abraços,
Código: Selecionar todos
aDir:=DIRECTORY("C:\TESTE.","D")
IF LEN(aDir)>0
ALERT("Diretório existe...")
ELSE
ALERT("Diretório NAO existe...")
ENDIFToledo - Clipper On Line
toledo@pctoledo.com.br
Harbour 3.2/MiniGui/HwGui
Faça uma doação para o fórum, clique neste link: http://www.pctoledo.com.br/doacao
toledo@pctoledo.com.br
Harbour 3.2/MiniGui/HwGui
Faça uma doação para o fórum, clique neste link: http://www.pctoledo.com.br/doacao
-
Adalberto
- Usuário Nível 3

- Mensagens: 343
- Registrado em: 01 Set 2007 01:09
- Localização: Santa Cruz de la Sierra - Bolivia
Re: Ver Diretorio
Toledo, bom día.
Fiz testes com o programa que eu postei e com o programa que você postou; ambos reportam como EXISTENTE um diretório que nau existe se na pasta mãe tem um arquivo com nome semelhante:
Exemplo:
Nosso exemplo diz que EXISTE o diretório TESTE
Por tanto modifiquei o meu e ficou assim e deu certo.
Um grande abraço
Fiz testes com o programa que eu postei e com o programa que você postou; ambos reportam como EXISTENTE um diretório que nau existe se na pasta mãe tem um arquivo com nome semelhante:
Exemplo:
Código: Selecionar todos
C:\ TESTE // arquivo
TESTE1 // Pasta
WINDOWS // pastaPor tanto modifiquei o meu e ficou assim e deu certo.
Código: Selecionar todos
LOCAL acDir := DIRECTORY( ( "C:\*.*" ) , "D" )
LOCAL lTem := .F. , nI , nLen := LEN( acDir ) , cNomeDir
FOR nI := 1 TO LEN( acDir )
cNomeDir := ALLTRIM( acDir[ nI , 1 ] )
IF ( ( cNomeDir == 'TESTE' ) .AND. ( acDir[ nI , 5 ] == 'D' ) ) // D=diretorio
lTem := .T.
EXIT
ENDIF
NEXT nI
IF lTem // Existe la carpeta buscada
ALERT( 'EXISTE' )
ELSE
ALERT ( 'NAO EXISTE' )
ENDIF
RETURN NIL- Toledo
- Administrador

- Mensagens: 3133
- Registrado em: 22 Jul 2003 18:39
- Localização: Araçatuba - SP
- Contato:
Re: Ver Diretorio
Realmente, fiz um teste agora... mas no meu exemplo é só alterar a seguinte linha:
Altere:
troque por:
Abraços,
Altere:
Código: Selecionar todos
aDir:=DIRECTORY("C:\TESTE.","D")Código: Selecionar todos
aDir:=DIRECTORY("C:\TESTE\*.","D")Toledo - Clipper On Line
toledo@pctoledo.com.br
Harbour 3.2/MiniGui/HwGui
Faça uma doação para o fórum, clique neste link: http://www.pctoledo.com.br/doacao
toledo@pctoledo.com.br
Harbour 3.2/MiniGui/HwGui
Faça uma doação para o fórum, clique neste link: http://www.pctoledo.com.br/doacao
-
alxsts
- Colaborador

- Mensagens: 3092
- Registrado em: 12 Ago 2008 15:50
- Localização: São Paulo-SP-Brasil
Re: Ver Diretorio
Olá amigos. Tenham todos um excelente 2009!
Creio que a forma mais simples e rápida para se verificar a existencia de uma pasta é usando a funcão File(), como no exemplo abaixo:
[]s
AlxSts
Creio que a forma mais simples e rápida para se verificar a existencia de uma pasta é usando a funcão File(), como no exemplo abaixo:
Código: Selecionar todos
IF ! File( "Teste\*.*" ) // é necessário colocar o \*.* após o nome da pasta
Alert( "Pasta não encontrada!" )
ENDIFAlxSts
[]´s
Alexandre Santos (AlxSts)
Alexandre Santos (AlxSts)
-
Adalberto
- Usuário Nível 3

- Mensagens: 343
- Registrado em: 01 Set 2007 01:09
- Localização: Santa Cruz de la Sierra - Bolivia
Re: Ver Diretorio
Amigos do fórum
Vejam só as diferentes formas de solucionar um mesmo problema, mais é melhor se olham para a vontade expressada em compartilhar conhecimentos; isso mesmo é o me agrada deste foro, aqui aprendo e se posso ajudo (com meus humildes conhecimentos).
Brigado Toledo, alxsts, e claro que sim, obrigado a todos vocês.
Um grande abraço.
Vejam só as diferentes formas de solucionar um mesmo problema, mais é melhor se olham para a vontade expressada em compartilhar conhecimentos; isso mesmo é o me agrada deste foro, aqui aprendo e se posso ajudo (com meus humildes conhecimentos).
Brigado Toledo, alxsts, e claro que sim, obrigado a todos vocês.
Um grande abraço.
-
alxsts
- Colaborador

- Mensagens: 3092
- Registrado em: 12 Ago 2008 15:50
- Localização: São Paulo-SP-Brasil
Re: Ver Diretorio
Este é o objetivo principal!
Grato pelo incentivo.
[]s
AlxSts
Grato pelo incentivo.
[]s
AlxSts
[]´s
Alexandre Santos (AlxSts)
Alexandre Santos (AlxSts)
- Pablo César
- Usuário Nível 7

- Mensagens: 5312
- Registrado em: 31 Mai 2006 10:22
- Localização: Curitiba - Paraná
Ver Diretorio se existe
Só fazendo um complemento a esta indicação do colega:
Parece redundante mas funciona ! E muitas vezes é necessária essa verificação. Talvez existam várias funções de LIBs externas que dêm o mesmo resultado. Outra coisa que devemos observar é que o nome da pasta esteja no formato 8.3, isto é: NOME CURTO.
Só irá funcionar corretamente, apartir do momento que exista ao menos um arquivo nesse diretório. Se o diretório acabou de ser criado e não contém nenhum arquivo dentro dele, irá dar como inexistente. O que não corresponderia, pois uma pasta ou diretório não deixa de ser "um arquivo" (com caracteristicas diferentes, mas no final é um arquivo) veja conceito no Wikipédia. Portanto a forma mais segura é a indicação do Toledo:alxsts escreveu:Creio que a forma mais simples e rápida para se verificar a existencia de uma pasta é usando a funcão File(), como no exemplo abaixo:
Código: Selecionar todos
IF ! File( "Teste\*.*" ) // é necessário colocar o \*.* após o nome da pasta Alert( "Pasta não encontrada!" ) ENDIF
Código: Selecionar todos
aDir:=DIRECTORY("C:\TESTE\*.","D")
IF LEN(aDir)>0
ALERT("Diretório existe...")
ELSE
ALERT("Diretório NAO existe...")
ENDIFUm clip-abraço !
Pablo César Arrascaeta
Compartilhe suas dúvidas e soluções com todos os colegas aqui do fórum.
Evite enviar as dúvidas técnicas por MPs ou eMails, assim todos iremos beneficiar-nos.
Pablo César Arrascaeta
Compartilhe suas dúvidas e soluções com todos os colegas aqui do fórum.
Evite enviar as dúvidas técnicas por MPs ou eMails, assim todos iremos beneficiar-nos.
-
alxsts
- Colaborador

- Mensagens: 3092
- Registrado em: 12 Ago 2008 15:50
- Localização: São Paulo-SP-Brasil
Re: Ver Diretorio
Olá!
É verdade Pablo... voce está certo!
[]á
AlxSts
É verdade Pablo... voce está certo!
[]á
AlxSts
[]´s
Alexandre Santos (AlxSts)
Alexandre Santos (AlxSts)