Hallo Rainer,
der Source ist aus meinem Beispiel. Es ist mit klar das der Algorithmus
für sehr große Dateien nicht zu gebrauchen ist. Deshalb hae ich auch folgendes geschrieben:
Zitat:
Quick and Dirty SuchAlgo für Zeichenketten in einer binären Datei
Der Suchalgorithmus ist natürlich lausig (funktioniert aber). Hier kannst Du dann
noch einiges optimieren
Getestet habe ich den Algorithmus mit einer
DLL von 61 kByte. Um festzustellen das der gesuchte
Text nicht in der
DLL vorkommt benötigt der Algorithmus auf einem P4 / 3GHz ca 1 sek.
Das ist verdammt lange. Wenn es meine Aufgabe wäre, würde ich jetzt versuchen mit dem Boyer/Moore
Ansatz weiterzukommen.
Sinn und Zweck des Beispiels ist es zu zeigen, dass für solch eine Aufgabe Streams verwenden werden sollten.
Null terminierte Strings sind kein Problem.
Sehr große Dateien würde ich auch blockorientiert verarbeiten.