Einzelnen Beitrag anzeigen

DieDolly

Registriert seit: 22. Jun 2018
2.175 Beiträge
 
#1

Dateiliste gefiltert erstellen

  Alt 24. Aug 2023, 15:21
Der Titel klingt vielleicht etwas komisch. Aber grob erklärt.

Mit Winapi.Windows.FindFirstFileEx, ganz normal wie man das so kennt, gehe ich durch ein Verzeichnis. Zu jeder Datei und jedem Verzeichnis erstelle ich ein Objekt, welches in eine Liste kommt. Das funktioniert rasend schnell und reicht mir vollkommen so wie es ist.

Ich möchte aber bevor ein Objekt überhaupt erstellt wird prüfen, ob der Dateiname bei dem FindFirstFileEx() gerade dran ist in einer zweiten Liste vorkommt. Falls ja, soll das Objekt am Ende nicht erzeugt werden.

Die zweite Liste enthält nur halbe Pfade also beispielsweise so
Sub1\Sub2\File1.exe
FileX.exe
Sub1\FileY.exe

Das Hauptverzeichnis speichere ich dort nicht mit, da das zu große Dateien zum Speichern geben würde.

Wie kann ich mit Winapi.Windows.FindFirstFileEx() nun Dateien aussortieren, die in der zweiten Liste vorkommen?
Bei 1000 Dateien dauert das aktuell 4 Sekunden, wenn ich 400 davon aussortieren lassen möchte. Ohne Aussortieren dauert das Erzeugen der Objekte rund 10 Millisekunden.
  Mit Zitat antworten Zitat