Newsgroup: it.comp.lang.visual-basic
Titolo: [?] Come sapere se un file esiste....

So che è una domanda facile per voi.
Data la funzione:
Function Exist (f as string) as boolean
end function
che cosa ci scrivo dentro per avere TRUE quando il file specificato
esiste e viceversa per il FALSE.
Grazie
ciao.
-----------------------------------------------------------
"We are such stuff as dream are made on"
William Shakespeare, "The Tempest"
-----------------------------------------------------------
Email: 
igor.ba...@imola.nettuno.it


Semplice usiamo la funzione dir ovvero :
Function Exist(f as String) as Boolean
If Dir(f) = "" then Exist = False else Exist = True
End Function
oh + facile di cosě si muore ... ;-)

 end function
Con la funzione Dir puoi avere anche moltre altre info sul file o sulla
cartella che ti interessa. Ti consiglio di dare un occhio all'help.
Ciao
Daniele
---------------------------------------------------------------------------
Le risposte alle tue domande le trovi sul Sito Comune di questo NewsGroup:
 
http://www.murialdo.it/it_lang_vb
---------------------------------------------------------------------------

Ti va bene in una riga sola??? :-)
(Tratto da MSVB Site (di prossima apertura...))
Esiste = Dir(NomeFile) <> ""
False se non esiste, True se esiste.....
Ciao,
Moreno
#sirri#@
tin.it
(togliete "#" dall'indirizzo)






per sapere se il file esiste devi iscrivere il seguente codice in una
funzione. Naturalmente devi dichiarare la   variabile che qui l'ho chiamata
'filenamecontr' nelle
dichiarazioni del form o del modulo.
Public Function exists()
    Dim n As Integer
    On Error GoTo handler
    n = FreeFile
    '  Apre il file per l'input. Se viene aperto, il file esiste
    Open FileNameContr For Input As #n
    Close #n
    exists = True
    Exit Function
handler:
   ' Il file non esiste
    exists = False
    Exit Function
End Function
 Altrimendi dalla versione 5 in poi di
VB puoi fare questa funzione semplicemente con l' istruzione DIR.
Ciao Paolo


Esiste = Len(Dir(NomeFile)) <> 0.
da falso se non esiste e vero se esiste. Le operazioni booleane con le
stringhe sono più lente di quelle con i numeri.
Ciao

...

E allora acceleriamo ancora il processo:
Esiste = Len(Dir$(NomeFile))<>0 '<>0 può anche essere omesso
Le funzioni stringa terminanti in $ restituiscono una stringa, senza $
restituiscono un variant (lentissimo)
Ciao.


wrote:
Sarà un pò macchinosa ma a me funziona egragiamente questo codoce che
nonb ricordo dove ho trovato:
'Generale
Option Explicit
Const gstrSEP_DIR$ = "\"
Const gstrQUOTE$ = """"
Function FileExists(ByVal strPathName As String) As Integer
    Dim intFileNum As Integer
   On Error Resume Next
    ' Se la stringa è racchiusa tra virgolette, queste vengono
rimosse.
    strPathName = strUnQuoteString(strPathName)
    'Rimuove gli eventuali caratteri finali di separazione dai nomi di
directory
    If Right$(strPathName, 1) = gstrSEP_DIR Then
        strPathName = Left$(strPathName, Len(strPathName) - 1)
    End If
    'Tenta di aprire il file. Il valore restituito da questa funzione
è False
    'se viene generato un errore all'apertura, True in caso contrario.
    intFileNum = FreeFile
    Open strPathName For Input As intFileNum
    FileExists = IIf(Err = 0, True, False)
    Close intFileNum
    Err = 0
End Function
Public Function strUnQuoteString(ByVal strQuotedString As String)
' Questa routine verifica se strQuotedString è racchiusa tra
virgolette e,
' in caso affermativo, le rimuove.
    strQuotedString = Trim(strQuotedString)
    If Mid$(strQuotedString, 1, 1) = gstrQUOTE And
Right$(strQuotedString, 1) = gstrQUOTE Then
       ' La stringa è racchiusa tra virgolette, che vengono rimosse.
        strQuotedString = Mid$(strQuotedString, 2,
Len(strQuotedString) - 2)
    End If
    strUnQuoteString = strQuotedString
End Function
'PRATICA
Private Sub Command1_Click()
  If FileExists("C:\vb") = True Then
    Text1.Text = "True"
  Else
    Text1.Text = "Falso"
  End If
End Sub
Se non erro devi inserire le funxction in un modulo normale.
Ciao 
Robin

 nonb ricordo dove ho trovato:
Non dubito che funzioni, ma perchè tutto quel codice per una cosa così
semplice?
Ciao
Daniele



Questo non lo sapevo. Grazie ^_^
Ciao

---------------------------------------------------------------------------
Si hai ragione, ma sai non avevo ancora provato DIR :-)))
Ciao