Thema: Delphi Aktuelle Datei finden

Einzelnen Beitrag anzeigen

Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
44.209 Beiträge
 
Delphi 12 Athens
 
#7

AW: Aktuelle Datei finden

  Alt 11. Dez 2024, 20:18
Wenn möglich, versuch ich schon das vom Delphi selbst zu nutzen.
Ist nicht immer das Idealste, aber z.B. die IOUtils sind einfacher und dadurch fehlerunanfälliger und erzeugen auch so "übersichtlicheren" Code, gegenüber den alten Pascal-Prozeduren oder der WinAPI, vor allem wenn es auch noch rekursiv oder iterativ wird.

Dann muss aber der Compiler auf Kurzschluss gestellt sein.
Was aber auch der Standard ist und IMHO besser auch sein sollte.

Wobei es hier jetzt auch nicht schlimm wäre, jedenfalls im Endergebnis. (und bei dem zweiten Vergleich würde es nicht stören, wenn i auf einem Zufallswert läge)

PS: PostgreSQL hatte mal die volle Auswertung im PLSQL, aber sie haben eingesehn, dass es voll beschissen ist.

Es ist auch meistens einer der Fälle, wo ich dieses Compilersetting nicht explizit vorgebe und auch nicht drauf prüfe, falls es wer umstellt ... isser halt selbst Schuld (andere Settings prüfe ich entweder oder gebe sie für meine Funktion/Unit vor)



Man muß nichtmal das Result-Array der Funktion benutzen. (einfach immer blind False zurückgeben, damit das Array nicht sinnlos gefüllt wird)
In der Methode kannst du das Gewünschte ja so benutzen und dort auch extern speichern, wie und wo auch immer du willst. (oder Beides gemeinsam nutzen)

Für ein Projekt hatte ich zuletzt GetFiles nur benutzt um "alle" Dateien zu suchen
und dann nachher auf dieses Array gefiltert, für unterschiedliche Dateien und Vorgänge,
also einmal suchen und dann "schnell" das Array (als Cache), anstatt für Jeden einzeln.

So könnte man auch das noch gemütlich z.B. mit einer RecentListe kombinieren.




In diesem Fall war es einfacher die Vergleichmethode sich zu sparen.
Das RESULT vorher in eine Variable und man kann beim Anzeigen einen Fortschritt anzeigen (exklusive der Zeit für die Suche selbst).

Direkt in der Vergleichsmethode arbeiten, könnte man beim Suchen die Position (Pfad) als Fortschritt anzeigen (weiß aber natürlich die Anzahl nicht).

Doppelt suchen hatte ich früher mal gemacht, aber es ist immer langsamer.
Na gut, beim Suchen den Suchfortschritt (wenn man viele Dateien/Verzeichnisse sucht)
und am Ende dann nochmal über das Array und dort kann man dann den Gesamtfortschritt + Restzeit ausgeben, wenn die Verarbeitung "langsamer" ist.
$2B or not $2B
  Mit Zitat antworten Zitat