3. Path içerisindeki dizin isimlerini vektöre aktarmak

Sık sık kullandığım ve işlerimi oldukça pratikleştiren bir fonksiyon. Bir klasörün tam yolunu (path) verdiğinizde, tek boyutlu bir dizi içerisinde tüm klasör adlarını geri döndüren basit bir fonksiyon.


Bu işlem için aşağıda hazırladığım fonksiyon kullanılabilir. Kendisi işte burada;

    Private Function get_folders_from_path_to_array(ByVal yol As String
        Dim klasor_adları() As String = {}
        Dim klasöradı As String = ""
            For i = 0 To yol.Length - 1
                If yol(i) = "\" Then
                    ReDim Preserve klasor_adları(klasor_adları.Length)
                    klasor_adları(klasor_adları.Length - 1) = klasöradı
                    klasöradı = ""
                Else
                    klasöradı = klasöradı + yol(i).ToString
                End If
            Next
            If klasöradı <> "" Then
                ReDim Preserve klasor_adları(klasor_adları.Length)
                klasor_adları(klasor_adları.Length - 1) = klasöradı
            End If
        Return klasor_adları
    End Function 


Fonksiyonun çağrılmasını da yazayım tam olsun;

Dim klasorler() As String = get_folders_from_path_to_array(path)



Böylece klasorler() adındaki vektör içerisine path adlı stringde verdiğimiz klasör yolunda bulunan tüm klasörler hiyerarşik sırayla atılacaklar. 




Örneğin;

        Dim dirs_array() As String = get_folders_from_path_to_array("D:\Ders\Veri Tabanı\Final Notları")



aşağıdaki şekilde bir vektör (tek boyutlu array) oluşturacaktır:

        dirs_array(0) = "D:"
        dirs_array(1) = "Ders"
        dirs_array(2) = "Veri Tabanı"
        dirs_array(3) = "Final Notları"


Yorumlar

Bu blogdaki popüler yayınlar

Bootstrap 4.1 Same Height Nav Tab Pane in Modal