Hallo
Ich arbeite zur Zeit mit VB5
Dabei hab ich ein kleines Problem:
Ich verstehe nicht, warum das Durchsuchen eines Strings, das ist entweder die Methode
richtextbox1.find(Parameter usw,)
oder die Funktion
Position = instr(Parameter usw,)
einmal ganz flott geht, und in einem neuen Programm unerträglich langsam.
Ich möchte einen Text bearbeiten, zum Beispiel Kommas durch einen Zeilenvorschub ersetzen.
Als Zeitverbraucher habe ich die beschriebenen Suchfunktionen/Methoden ermittelt.
Gibt es irgendwie eine Einstellung oder ist das irgendwie metaphysisch oder gar pädagogisch vom VB ?
Vielen Dank für schlaue Auskunft.
Matthias
Moin!
sobald Strings etwas länger werden hat VB so seine Probleme im Handling. Dat dauert einfach…
Wenn es um das reine Suchen und ersetzen geht, kann die vielleicht die Replace$-Funktion gute Dienste leisten. Nach meiner Erfahrung geht das um einiges schneller. Da lassen sich auch Offsets und Anzahl der gewünschten Ersetzungen definieren.
Die Richtextbox-Methode Find habe ich selbst noch nicht verwendet, aber ich kann mir vorstellen, daß das Ding ohnehint etwas lahmer ist, weil ja immer noch der ganze RTF-Zauber im Hintergrund mitläuft.
Sven
[Bei dieser Antwort wurde das Vollzitat nachträglich automatisiert entfernt]
danke
Hallo
sobald Strings etwas länger werden hat VB so seine Probleme im
Handling. Dat dauert einfach…
Ja, das stimmt. Aber auch nicht immer. Wenn ich einen String mit der Stringfunktion a$ = string(„x“,Länge) erstelle, geht das ganz flott.
Man kann auch Bytearrays nehmen, die sind noch schneller.
Mein Problem ist aber so, das Suchen ist völlig unlogisch langsam, und dann auch nur in der einen Anwendung.
Jetzt ist meine Meinung die, das könnte mit dem Multitasking zusammenhängen, worauf ich wenig Einfluss habe, oder ich könnte relativ einfach eine superschnelle Assembler Routine benutzen,was ich allerdings zuerst einmal vermeiden wollte.
Wenn es um das reine Suchen und ersetzen geht, kann die
vielleicht die Replace$-Funktion gute Dienste leisten. Nach
meiner Erfahrung geht das um einiges schneller. Da lassen sich
auch Offsets und Anzahl der gewünschten Ersetzungen
definieren.
Vielen Dank, da werde ich mal schauen, auch obs schon in vb5 drin ist.
Die Richtextbox-Methode Find habe ich selbst noch nicht
verwendet, aber ich kann mir vorstellen, daß das Ding ohnehint
etwas lahmer ist, weil ja immer noch der ganze RTF-Zauber im
Hintergrund mitläuft.
Ja , ist aber etwas einfacher, weil man gleich den zu ersetzenden Text ausgewählt bekommt.
Ich werde jetzt mal weitersehen.
MfG,Matthias