Seite 1 von 2
ExamineDirectory mit mehreren Pattern ??
Verfasst: 31.12.2005 10:05
von nco2k
guten morgen community,
gibt es eine möglichkeit bei ExamineDirectory() mehrere pattern anzugeben, so dass z.b. nur *.bmp und *.mp3 dateien aufgelistet werden, oder muss ich *.* angeben und jede einzelne datei manuel überprüfen ??
vielen dank im voraus und guten rutsch ins neue jahr!
c ya,
nco2k
Re: ExamineDirectory mit mehreren Pattern ??
Verfasst: 31.12.2005 10:43
von walker
nco2k hat geschrieben:
oder muss ich *.* angeben und jede einzelne datei manuel überprüfen ??
...leider ja...
Verfasst: 31.12.2005 21:46
von nco2k
schade.
naja halb so schlimm, trotzdem danke für die antwort.
wünsch dir noch einen guten rutsch ins neue jahr.
c ya,
nco2k
Verfasst: 04.01.2006 00:26
von Andre
Ich habe Fred aufgrund dieses Threads mal vorgeschlagen, den Befehl ExamineDirectory() so zu erweitern, dass mehrere Pattern (z.B. ".bmp|.gif") als Parameter übergeben werden können.
Er findet die Idee gut und zieht eine Umsetzung in Betracht.

Verfasst: 04.01.2006 00:33
von nco2k
das erspart dann wohl einiges an schreibarbeit und sollte zudem noch schneller sein, danke andre!
c ya,
nco2k
Verfasst: 04.01.2006 12:42
von PAMKKKKK
Na auf die Schnelle....
Um nicht das Directory mehrmahls mit jedem Pattern durchsuchen zu müssen:
1. Erstell dir eine (LinkedList = LiLi) mit allen Dateien (und ihren Pfaden)
2. durchsuche die LiLi nach den Pattern und kopier das gefundenen LiLi-Element in eine zweite LiLi
3. nutze als ergebnis die zweite LiLi
4. leere beide LiLis um Speicher (zu sparen)
Verfasst: 04.01.2006 13:16
von nco2k
@PAMKKKKK
ist doch total umständlich, ich machs dann lieber so in etwa:
Code: Alles auswählen
If ExamineDirectory(0, "c:\", "*.*")
Repeat
FileType = NextDirectoryEntry()
If FileType = 1
FileName.s = DirectoryEntryName()
If FileName
FileExtension.s = LCase(GetExtensionPart(FileName))
If FileExtension = "bmp" Or FileExtension = "mp3"
Debug FileName
EndIf
EndIf
EndIf
Until FileType = 0
EndIf
c ya,
nco2k
Verfasst: 04.01.2006 13:20
von Kiffi
nco2k hat geschrieben:ich machs dann lieber so in etwa:
ACK, diese Methode würde ich auch bevorzugen.
allerdings:
mach um's GetExtensionPart() noch ein LCase(), damit Du auch wirklich alle Schreibarten berücksichtigst.
Grüße ... Kiffi
Verfasst: 04.01.2006 13:22
von nco2k
@Kiffi
ja stimmt, in meinem eigentlichen projekt habe ich auch ein LCase() eingebaut, aber in dem beispielcode hab ichs grad vergessen.
tortzdem danke für den hinweis.
c ya,
nco2k
Verfasst: 04.01.2006 13:50
von PAMKKKKK
Die Methode ist natürlich besser und schlanker!
(Wieder was gerlernt )
