vb@rchiv
VB Classic
VB.NET
ADO.NET
VBA
C#
Mails senden, abrufen und decodieren - ganz easy ;-)  
 vb@rchiv Quick-Search: Suche startenErweiterte Suche starten   Impressum  | Datenschutz  | vb@rchiv CD Vol.6  | Shop Copyright ©2000-2025
 
zurück

 Sie sind aktuell nicht angemeldet.Funktionen: Einloggen  |  Neu registrieren  |  Suchen

Fortgeschrittene Programmierung
Re: UTF8 Verzeichnisse Erfassen 
Autor: Preisser
Datum: 27.09.10 22:04

Hallo,
das stimmt schon, mit GetFile erfasst man eine bestimmte Datei. Wenn es diese allerdings nicht gibt, wird ein Fehler ausgelöst.

Wenn du aber alle Dateien in einem Ordner durchlaufen willst, müsstest du die .Files-Eigenschaft des entsprechenden Folder-Objektes benutzen. Falls ein Verzeichnis wirklich leer ist, liefert die Files-Eigenschaft auch eine leere Collection.

Hier mal ein Beispiel, wie man mit dem FSO rekursiv alle Dateien eines bestimmten Typs (inkl. Dateien in Unterverzeichnissen) eines bestimmten Verzeichnisses als String-Array auslesen kann:
Public Function ListeVerzeichnis(Pfad As String, Dateiendung As String) As _
  String()
    Dim FSO As FileSystemObject
    Set FSO = New FileSystemObject
    ReDim ListeVerzeichnis(0)
    Dim Verz As Folder
    Set Verz = FSO.GetFolder(Pfad)
    Unterordner Verz, vbNullString, ListeVerzeichnis, Dateiendung, FSO
End Function
 
Private Sub Unterordner(Ordner As Folder, BisherigerPfad As String, ListArr() _
  As String, Endung As String, FSO As FileSystemObject)
    Dim Datei As File, Subordner As Folder
    For Each Subordner In Ordner.SubFolders
        Unterordner Subordner, BisherigerPfad & IIf(BisherigerPfad = "", "", _
          "\") & Ordner.Name, ListArr, Endung, FSO
    Next
    For Each Datei In Ordner.Files
        If Endung = ".*" Or LCase(Right(Datei.Name, Len(Endung))) = LCase( _
          Endung) Then
            ReDim Preserve ListArr(UBound(ListArr) + 1)
            ListArr(UBound(ListArr)) = BisherigerPfad & IIf(BisherigerPfad = _
              "", "", "\") & Datei.Name
        End If
    Next
End Sub
Die Funktion muss dann mit dem Pfad des zu durchsuchenden Verzeichnisses aufgerufen werden und liefert dann ein String-Array mit den Dateien (allerdings ist der 0. Eintrag ein leerer String). Für größere Listen ist es auch noch nicht optimal, da ein ReDim Preserve nach jedem Eintrag das komplette Array neu kopieren muss.

Beitrag wurde zuletzt am 27.09.10 um 22:05:10 editiert.
alle Nachrichten anzeigenGesamtübersicht  |  Zum Thema  |  Suchen

 ThemaViews  AutorDatum
UTF8 Verzeichnisse Erfassen2.959salim_aliya27.09.10 03:55
Re: UTF8 Verzeichnisse Erfassen2.367Preisser27.09.10 14:18
Re: UTF8 Verzeichnisse Erfassen2.099salim_aliya27.09.10 15:18
Re: UTF8 Verzeichnisse Erfassen2.157salim_aliya27.09.10 15:38
Re: UTF8 Verzeichnisse Erfassen2.176Preisser27.09.10 15:50
Re: UTF8 Verzeichnisse Erfassen2.172salim_aliya27.09.10 16:34
Re: UTF8 Verzeichnisse Erfassen2.148Preisser27.09.10 18:18
Re: UTF8 Verzeichnisse Erfassen2.144salim_aliya27.09.10 20:51
Re: UTF8 Verzeichnisse Erfassen2.180Preisser27.09.10 22:04
Re: UTF8 Verzeichnisse Erfassen2.147salim_aliya28.09.10 20:03

Sie sind nicht angemeldet!
Um auf diesen Beitrag zu antworten oder neue Beiträge schreiben zu können, müssen Sie sich zunächst anmelden.

Einloggen  |  Neu registrieren

Funktionen:  Zum Thema  |  GesamtübersichtSuchen 

nach obenzurück
 
   

Copyright ©2000-2025 vb@rchiv Dieter Otter
Alle Rechte vorbehalten.
Microsoft, Windows und Visual Basic sind entweder eingetragene Marken oder Marken der Microsoft Corporation in den USA und/oder anderen Ländern. Weitere auf dieser Homepage aufgeführten Produkt- und Firmennamen können geschützte Marken ihrer jeweiligen Inhaber sein.

Diese Seiten wurden optimiert für eine Bildschirmauflösung von mind. 1280x1024 Pixel