ArcadiA Club
ArcadiA Club


AAC FORUM     AAC News     AAC Box    



Home Page   Home Page
programmazione.htm   Programmazione - FORUM sezione  Vai al FORUM
 
Username:
Password:
Iscriviti!  |  Recupero password



Iscriviti GRATIS, potrai navigare senza questa
fascia e accedere a contenuti esclusivi:

    E-Mail:

Password:



 
 
- Gestire un path (percorso di un file) -
 
COSA SERVE PER QUESTO TUTORIAL
Download | Chiedi sul FORUM | Glossario Basica conoscenza di VB .NET
Classe Path

UNA CLASSE PER GESTIRE UN PERCORSO
Utile classe per ottenere da un percorso nome, estensione, titolo, cartelle del file e altro.

Codice:

''' <summary>Semplice classe che permette di ricavare informazioni da una path 
''' di un file</summary>
Public Class Path
    ''' <summary>La stringa della path</summary>
    Protected strPath As String

    ''' <summary>Costruttore</summary>
    Public Sub New(ByVal Path As String)
        Me.Path = Path
    End Sub

    ''' <summary>Restituisce e imposta il path, verifica inoltre la correttezza 
    ''' della stringa</summary>
    Public Property Path() As String
        Get
            Return strPath
        End Get
        Set(ByVal value As String)
            strPath = value.Trim
            If strPath.Substring(strPath.Length - 1, 1) = "\" Then
                Throw New Exception("Only file-path")
            ElseIf strPath Is Nothing OrElse strPath = [String].Empty Then
                Throw New Exception("Void path received")
            ElseIf IsUNC And InStrT(strPath, "\") < 4 Then
                Throw New Exception("Only file-path")
            End If
        End Set
    End Property

    ''' <summary>Restituisce True se è un percorso UNC 
    ''' (es. "\\mio_pc\cartella\file.ext")</summary>
    Public ReadOnly Property IsUNC() As Boolean
        Get
            Return strPath.Substring(0, 2) = "\\"
        End Get
    End Property

    ''' <summary>Restituisce True se il file specificato esiste</summary>
    Public ReadOnly Property Exists() As Boolean
        Get
            Return System.IO.File.Exists(strPath)
        End Get
    End Property

    ''' <summary>Restituisce la cartella in cui il file è contenuto 
    ''' (es. "c:\miacartella\")</summary>
    Public ReadOnly Property Directory() As String
        Get
            Return strPath.Substring(0, strPath.LastIndexOf("\") + 1)
        End Get
    End Property

    ''' <summary>Restituisce il nome del file (es. "file.ext")</summary>
    Public ReadOnly Property FileName() As String
        Get
            Return strPath.Substring(strPath.LastIndexOf("\") + 1)
        End Get
    End Property

    ''' <summary>Restituisce il titolo del file (es. "file")</summary>
    Public ReadOnly Property Title() As String
        Get
            Title = Me.FileName
            If Not Title.IndexOf(".") = -1 Then _
                Title = Title.Substring(0, Title.LastIndexOf("."))
        End Get
    End Property

    ''' <summary>Restituisce l'estensione del file (es. "ext")</summary>
    Public ReadOnly Property Extension() As String
        Get
            If Title.IndexOf(".") = -1 Then Return [String].Empty
            Return strPath.Substring(strPath.LastIndexOf(".") + 1)
        End Get
    End Property

    ''' <summary>Restituisce l'ennesima directory superiore 
    ''' (es. New Path("c:\a\b\c\d\e\f.ext").Parent(2) = "c:\a\b\c\")</summary>
    ''' <param name="Index">L'indice della cartella superiore</param>
    Public ReadOnly Property Parent(Optional ByVal Index As Integer = 1) As String
        Get
            If Index < 0 Then Throw New Exception("Index can't be negative")
            If Index >= InStrT(strPath.Replace("\\", ""), "\") Then _
            	Throw New Exception("The parent you requested is over the root directory")
            Parent = Me.Directory
            Dim C1 As Integer, strTPath As String
            strTPath = strPath
            For C1 = 1 To Index
                strPath = Parent.Substring(0, Parent.Length - 1)
                Parent = Me.Directory
            Next C1
            strPath = strTPath
        End Get
    End Property

    ''' <summary>Restituisce il numero totale di volte che strSearch 
    ''' appare in str</summary>
    ''' <param name="str">Stringa in cui effettuare la ricerca</param>
    ''' <param name="strSearch">Stringa da cercare</param>
    Private Function InStrT(ByVal str As String, ByVal strSearch As String) As Integer
        Return (str.Length - str.Replace(strSearch, "").Length) / strSearch.Length
    End Function
End Class

 
<< INDIETRO by VeNoM00  


Video collegati Visualizza i video di questa pagina
Visualizza video sull'argomento "script".
Visualizza video sull'argomento "classe".
Visualizza video sull'argomento "path".
Visualizza video sull'argomento "gestione".
Visualizza video sull'argomento "percorso".
Visualizza video sull'argomento "file".
Visualizza video sull'argomento "script classe path gestione percorso file".


Dì la tua: cosa ne pensi?
Esponi il tuo punto di vista e condividilo con migliaia di persone

Oggetto nuova discussione:


Testo del messaggio:

E-Mail:

Quanto fa più dieci:




 





^ TOP  
Linkaci | Segnala errore | Invita | Stampa


pubblicità | privacy | visione | diritti | ufficio stampa | donazioni | scrivici
© 1999-2023 - P.IVA 02284690035 - Grafica, layout e contenuti sono di esclusiva proprietà di ArcadiA Club.

Powered by:
Spazi pubblicitari di alto livello
 

Compra in un click! | Cerca prodotti in offerta: