Verificare se esiste un file

di Anonimizzato16645 il
10 risposte
Buongiorno a tutti,
io dovrei mettere una verifica ad un file se è già presente o no nella cartella e sto usando il seguente codice ma in qualsiasi caso mi crea il file.

	If FileSystem.Dir(percorso) = true Then

         	MsgBox("File già esistente!")

	Else
	
        	'Crea il nuovo file
        	
	End If
Grazie in anticipo

10 Risposte

  • Perchè non usi File.Exists()?
  • La Dir non restituisce un true/false ma una stringa (vedi documentazione). Se è vuota allora il file non esiste
    
    If FileSystem.Dir(percorso).Length = 0 Then
      ' File NON esiste
    Else
      ' File esiste
    End If
    
    ma si usa File.Exists con .NET e non vecchia roba VB6 come Dir
  • oregon ha scritto:



    ma si usa File.Exists con .NET e non vecchia roba VB6 come Dir
    Ho provato con questo ma mi scrive il file comunque.
    If System.IO.File.Exists(percorso) = True Then
  • Ci stai dicendo che System.IO.File.Exists(percorso) ritorna sempre False (perchè poi il file viene sempre ricreato): questo vuol dire che molto probabilmente la variabile 'percorso' non contiene precisamente il nome del file, ma contiene il solo percorso o il solo nome senza percorso o qualche altro errore di questo tipo, puoi verificare?
  • Ma perché non fai qualche controllo in più prima di postare?

    percorso cosa contiene esattamente?
  • Percorso risulta "/nomefile.xxx"
  • /nomefile.xxx

    in quale cartella sta? Come mai questo formato di percorso e non qualcosa come

    \nomefile.xxx
  • Il file viene salvato nella stessa cartella.
  • In quale "stessa" cartella? Nella stessa cartella dell'eseguibile? In questo caso deve essere "nomefile.xxx"
  • Ora funziona! Grazie mille!!
Devi accedere o registrarti per scrivere nel forum
10 risposte