Procedura: determinare se una directory è in sola lettura in Visual Basic
Il metodo GetDirectoryInfo restituisce un oggetto DirectoryInfo con una proprietà Attributes su cui possono essere eseguite delle query per ottenere informazioni sulla directory e determinare se è in sola lettura.
Nota
Nel computer in uso è possibile che vengano visualizzati nomi o percorsi diversi per alcuni elementi dell'interfaccia utente di Visual Studio nelle istruzioni seguenti. La versione di Visual Studio in uso e le impostazioni configurate determinano questi elementi. Per ulteriori informazioni vedere Impostazioni di Visual Studio.
Per determinare se una directory è in sola lettura
Utilizzare il metodo GetDirectoryInfo per restituire un oggetto DirectoryInfo per la directory specificata. In questo esempio viene restituito un oggetto DirectoryInfo per la directory TestDirectory.
Dim reader As System.IO.DirectoryInfo reader = My.Computer.FileSystem.GetDirectoryInfo("C:\testDirectory")
Eseguire query sulla proprietà Attributes dell'oggetto per determinare se è in sola lettura.
If (reader.Attributes And System.IO.FileAttributes.ReadOnly) > 0 Then MsgBox("Directory is readonly!") End If
Esempio
Nell'esempio riportato di seguito, che presenta il frammento di codice sopra esposto in forma completa, viene determinato se la directory testDirectory è in sola lettura e il risultato viene riportato in una finestra di messaggio.
Dim reader As System.IO.DirectoryInfo
reader = My.Computer.FileSystem.GetDirectoryInfo("C:\testDirectory")
If (reader.Attributes And System.IO.FileAttributes.ReadOnly) > 0 Then
MsgBox("File is readonly!")
End If
Compilazione del codice
Se la directory non esiste, non viene generata alcuna eccezione fino a quando non si accede a una proprietà dell'oggetto DirectoryInfo.
Programmazione efficiente
Le seguenti condizioni possono generare un'eccezione:
Il percorso non è valido per uno dei seguenti motivi: è una stringa di lunghezza zero. contiene solo spazi vuoti. contiene caratteri non validi. o è il percorso di un dispositivo ,ovvero inizia con \ \. \) (ArgumentException).
Il percorso non è valido in quanto Nothing (ArgumentNullException).
La lunghezza del percorso supera la lunghezza massima definita dal sistema (PathTooLongException).
Il nome di un file o di una directory nel percorso contiene i due punti (:) o ha un formato non valido (NotSupportedException).
L'utente non dispone delle autorizzazioni necessarie per visualizzare il percorso (SecurityException).
Vedere anche
Attività
Procedura: determinare gli attributi di una directory in Visual Basic