Wie langsam die Stringfunktionen doch siind, ist mir gerade Gestern wieder aufgefallen.
Ich hatte eine Listbox, die als RTF-Datei gesichert werden sollte. Bisher habe ich dazu die einzelnen Zeilen in ein EditField geschrieben: EditField1.Text=EditField1.Text+ListBox2.Cell(i,0)+" "+ListBox2.Cell(i,0)+EndOfLine Da gab es zwar noch diverse weitere Dinge (einfärben des Textes), aber die Bremse war ganz klar die Stringoperation. Das fiel mir gar nicht auf, da ich immer nur mit einigen wenigen Zeilen (maximal 200 Zeilen) getestet habe. Als mir ein Anwender schrieb, dass das Programm bei seinen ca. 10.000 Zeilen anscheinend hängen bleibt, habe ich das überprüft und kam auf deutlich über dreieinhalb Stunden(!) für die Funktion. Nachdem ich die Funktion so umgestellt habe, dass die Zeilen erst in ein Array geschrieben und danach per Join in das EditField übertragen werden, dauert das Ganze nur noch 3,55Sekunden(!) Das nur mal als Hinweis, wie sehr doch die Join Funktion das eigene Programm beschleunigen kann. MfG, Metti.
