Página 1 de 1
Ver Diretorio
Enviado: 21 Jan 2009 15:05
por negrao
Mocada, como faco pra verificar se um diretorio Existe, tipo
C:\TESTE\
se tiver blz , caso contrario , vou dar uma mensagem
Obrigado
Re: Ver Diretorio
Enviado: 21 Jan 2009 15:27
por sygecom
Utilizando a CA-TOOLS
Código: Selecionar todos
IF DIRCHANGE("\DADOS") == -3
ALERT("NÃO FOI POSSIVEL ACHAR O DIRETORIO")
ENDIF
Re: Ver Diretorio
Enviado: 22 Jan 2009 00:37
por Adalberto
negrao,
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
Um grande abraço.
Re: Ver Diretorio
Enviado: 22 Jan 2009 08:55
por Toledo
Outro exemplo:
Código: Selecionar todos
aDir:=DIRECTORY("C:\TESTE.","D")
IF LEN(aDir)>0
ALERT("Diretório existe...")
ELSE
ALERT("Diretório NAO existe...")
ENDIF
Abraços,
Re: Ver Diretorio
Enviado: 22 Jan 2009 12:24
por Adalberto
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.
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
Um grande abraço
Re: Ver Diretorio
Enviado: 22 Jan 2009 18:43
por Toledo
Realmente, fiz um teste agora... mas no meu exemplo é só alterar a seguinte linha:
Altere:
troque por:
Abraços,
Re: Ver Diretorio
Enviado: 22 Jan 2009 18:59
por alxsts
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:
Código: Selecionar todos
IF ! File( "Teste\*.*" ) // é necessário colocar o \*.* após o nome da pasta
Alert( "Pasta não encontrada!" )
ENDIF
[]s
AlxSts
Re: Ver Diretorio
Enviado: 22 Jan 2009 19:12
por Adalberto
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.
Re: Ver Diretorio
Enviado: 22 Jan 2009 19:44
por alxsts
Este é o objetivo principal!
Grato pelo incentivo.
[]s
AlxSts
Ver Diretorio se existe
Enviado: 06 Mai 2009 11:41
por Pablo César
Só fazendo um complemento a esta indicação do colega:
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
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:
Código: Selecionar todos
aDir:=DIRECTORY("C:\TESTE\*.","D")
IF LEN(aDir)>0
ALERT("Diretório existe...")
ELSE
ALERT("Diretório NAO existe...")
ENDIF
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.
Re: Ver Diretorio
Enviado: 06 Jun 2009 15:13
por alxsts
Olá!
É verdade Pablo... voce está certo!
[]á
AlxSts