Un percorso (o path) è una stringa che fornisce la posizione di un file o di una cartella, indipendentemente dal fatto che questa esista realmente sul disco. Esistono due tipi di percorsi: assoluti e relativi.
I path assoluti specificano completamente la posizione: il file o la cartella sono identificati univocamente, indipendentemente dalla posizione corrente.
I percorsi relativi specificano una posizione in modo parziale in quanto la posizione corrente viene utilizzata come punto iniziale. Il formato di un path dipende dalla piattaforma a cui è riferito: per esempio, in alcuni sistemi, un percorso può iniziare con la lettera che identifica l'unità o il volume, mentre in altri casi la lettera non è presente. Altri elementi che possono variare a seconda della piattaforma sono la lunghezza delle estensioni dei file piuttosto che il carattere di separazione dei vari elementi di un percorso.
Per gestire i percorsi di file e cartelle, nel .NET Framework esiste la classe System.IO.Path. Questa classe esegue operazioni sulle istanze String (stringhe di percorso) che contengono informazioni sul percorso di file o cartelle. Queste operazioni possono essere eseguite su diverse piattaforme. Tutti i membri della classe Path sono statici e possono essere richiamati senza generare l'istanza di un percorso. La maggior parte dei membri della classe Path non interagisce con il file-system e non verifica l'esistenza del file specificato da una stringa di percorso. Peraltro i contenuti della stringa specificata vengono convalidati e viene generata un'eccezione di tipo ArgumentException, nel caso in cui la stringa contenga caratteri non validi.
Come è riportato negli esempi di seguito, alcuni dei metodi esposti dalla classe Path permettono di fare il parsing di una stringa di percorso e di ottenerne gli elementi costitutivi (nome del file, nome della cartella, estensione) in modo molto semplice ed immediato.
Dim absoluteFilePath As String = "c:\aspitalia\scripts\ricky.txt" Dim absoluteFolderPath As String = "c:\aspitalia\scripts" Dim relativeFolderPath As String = "scripts" ' extension vale "txt" Dim extension As String = System.IO.Path.GetExtension(absoluteFilePath) ' fullPath vale "c:\aspitalia\scripts" se la posizione corrente è "c:\aspitalia" Dim fullPath As String = System.IO.Path.GetFullPath(relativeFolderPath) ' fileName1 vale "ricky.txt" Dim fileName1 As String = System.IO.Path.GetFileName(absoluteFilePath) ' fileName2 vale "ricky" Dim fileName2 As String = System.IO.Path.GetFileNameWithoutExtension(absoluteFilePath) ' directoryName vale "scripts" Dim directoryName As String = System.IO.Path.GetDirectoryName(absoluteFolderPath)
Commenti
Per inserire un commento, devi avere un account.
Fai il login e torna a questa pagina, oppure registrati alla nostra community.