Einzelnen Beitrag anzeigen

gullatrulla

Registriert seit: 11. Mai 2004
Ort: Malans (Schweiz)
43 Beiträge
 
Delphi 11 Alexandria
 
#1

800 XML-Dateien durchsuchen / Suche langsam beim 1. Mal

  Alt 14. Jul 2009, 18:35
Hi Delphi-Folks

Ich soll für einen Kunden eine Möglichkeit schaffen ca. 800 XML-Files
zu durchsuchen. Die Suche soll aufgrund eines Filters durchgeführt werden,
welcher der Kunde definiert.

Da die XML-Files immer gleich aufgebaut sind und ich weiss, dass die
zu suchenden Informationen immer an der 4-6 Zeile des XML-Files stehen
habe ich eine Suchroutine mittels "AssignFile" geschrieben.

Diese Routine ist so schnell, dass die 800 XML-Files in weniger
als 1 Sekunde durchsucht sind.
Aber (und jetzt kommt es). Die Suche ist nur so schnell, wenn die Dateien
vorher schon einmal "berührt" wurden.
Wenn der PC nach einem Neustart das erste Mal diese Routine ausführt vergehen
bis zu 15 Sekunden für die gleiche Routine welche sonst weniger als 1 Sekunde braucht.

Nicht dass 15 Sekunden ein sooooooooo grosses Problem darstellen. Jedoch ist es für den Kunden
lästig, dass die 1. Abfrage nach einem Neustart immer so lange dauert.

Ich habe z.B. schon versucht die Dateien bei Programmstart mittels Filelistbox zu
"initialisieren". Oder die Dateien beim Programmstart mittels TFileStream zu "initialisieren".
Ich dachte, dass dies den 1. Zugriff verschnellern würde. Ohne Erfolg.

Hat irgend jemand von Euch eine Idee wie dieses Problem lösbar wäre.

Herzlichen Dank für Eure Hilfe
Roland
  Mit Zitat antworten Zitat